简体   繁体   English

knex查询未使用express.js给出预期结果

[英]knex query not giving expected result with express.js

here is my knex raw sql query. 这是我的knex原始sql查询。

knex.raw("select group_concat(details_odishagovtjobdetails.more_info) as more_info,\
        scrap_odishagovtjobs.start_date,scrap_odishagovtjobs.last_date,scrap_odishagovtjobs.post_name,\
        scrap_odishagovtjobs.education,scrap_odishagovtjobs.requirement_board,scrap_odishagovtjobs.type \
        from scrap_odishagovtjobs inner join details_odishagovtjobdetails\
        on scrap_odishagovtjobs.join_id=details_odishagovtjobdetails.join_id\
         where scrap_odishagovtjobs.type=2 group by scrap_odishagovtjobs.post_name\
    ")

knex way: 揉搓方式:

let columns = [
'scrap_odishagovtjobs.last_date',
'scrap_odishagovtjobs.start_date',
'scrap_odishagovtjobs.post_name',
'scrap_odishagovtjobs.education',
'scrap_odishagovtjobs.requirement_board',
'scrap_odishagovtjobs.type',
'scrap_odishagovtjobs.join_id',
'details_odishagovtjobdetails.more_info'
];

db.select((db.raw('group_concat(details_odishagovtjobdetails.more_info) as details')),columns).from('scrap_odishagovtjobs').
innerJoin('details_odishagovtjobdetails', 'scrap_odishagovtjobs.join_id', 'details_odishagovtjobdetails.join_id')
.where('scrap_odishagovtjobs.type', 2).groupBy('scrap_odishagovtjobs.post_name')

response: 响应:

{
    "0": "24-11-2018",
    "1": "12/10/2018",
    "2": "Assistant Professor  – 107 Posts",
    "3": "M.Ch, MD/ MS, M.Sc, DM",
    "4": "OPSC",
    "5": 2,
    "6": 193457,
    "7": "{'Link': 'http://opsconline.gov.in/', 'Title': ' Apply Online'}",
    "details": "{'Link': 'http://opsconline.gov.in/', 'Title': ' Apply Online'},{'Link': 'http://www.opsc.gov.in/Admin/ContAttach/101819.pdf', 'Title': 'Notification '},{'Link': 'http://www.opsc.gov.in/', 'Title': ' Official Website'}"
}

here i am writing above query in knex way with express.js but i am getting serial no for each columns instead of actual column names. 在这里,我正在用express.js以knex的方式编写以上查询,但是我正在为每列而不是实际列名获取序列号。

Please have a look into my code. 请看一下我的代码。

You could try to change 你可以尝试改变

.select((db.raw('group_concat(details_odishagovtjobdetails.more_info) as details')),columns)

to

.select((db.raw('group_concat(details_odishagovtjobdetails.more_info) as details')), ...columns)

To not pass single values and an array to select .select(string, array) . 不传递单个值和数组以选择.select(string, array)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM