最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

[在QueryBuilder中定义tableDefination时如何添加GROUP BY命令(node.js)

运维笔记admin9浏览0评论

[在QueryBuilder中定义tableDefination时如何添加GROUP BY命令(node.js)

[在QueryBuilder中定义tableDefination时如何添加GROUP BY命令(node.js)

我在nodejs中使用QueryBuilder,在其中声明tableDefination是一个对象。在此对象中,我定义了selectSQL,formSQL和whereSQL。我的问题是如何在查询末尾添加GROUP BY命令。我试图将其添加到whereSQL中,但是QueryBuilder在whereSQL的末尾添加了“)”,因此最终会导致执行错误。下面是我的代码。

 whereSql += " && tb_cdta_driver.cdta_id = " + cdta_id;"

var tableDefinition = {
            sSelectSql: " count(tb_engagements.engagement_id) as rides, " +
                " tb_cdta_driver.driver_id, " +
                " tb_cdta_driver.driver_name, " +
                " tb_cdta_driver.driver_phone, " +
                " tb_cdta.cdta_name ",
            //DISTINCT
            sFromSql: " tb_cdta_driver  JOIN tb_engagements ON tb_cdta_driver.driver_id = tb_engagements.driver_id JOIN tb_cdta ON tb_cdta_driver.cdta_id = tb_cdta.cdta_id ", // added tb_session himadri
            sWhereAndSql: whereSql,

            aSearchColumns: ["tb_cdta_driver.driver_id"],
            // NASEEF: Added is_pos, appr_code and card_digits 
            sCountColumnName: " tb_cdta_driver.driver_id ",
            aoColumnDefs: [{
                mData: "driver_id",
                bSearchable: true
            }
            ]
        };
回答如下:

我通过在运行查询之前添加以下代码来解决它。希望对您有所帮助。

var requestQuery = req.query; var queries = queryBuilder.buildQuery(requestQuery); queries = queries.join(" "); var stringOperation = queries.toString().indexOf("ORDER"); queries = [queries.slice(0, stringOperation), "GROUP BY tb_cdta_driver.driver_id ", queries.slice(stringOperation)].join('');

发布评论

评论列表(0)

  1. 暂无评论