我正试图按一列排序我的集合获取结果,该列目前正在工作,但我希望排序不区分大小写。我翻阅了书架上的文档,在这里和其他论坛上到处搜索都没有结果。是否需要插入一些未加工的Knex?任何帮助都非常感谢。
这是我的代码:
new Recipes().query('orderBy', 'name', 'asc').fetch({
withRelated: [
{ instructions: (query) => { query.orderBy('step_number'); }},
'tags',
'ingredients',
'ingredients.alternatives',
'ingredients.tags'
]
});
我想做些类似的事情:
new Recipes().query('orderByIgnoreCase', 'name', 'asc').fetch({
withRelated: [
{ instructions: (query) => { query.orderBy('step_number'); }},
'tags',
'ingredients',
'ingredients.alternatives',
'ingredients.tags'
]
});
或:
new Recipes().query('orderBy', LOWER('name'), 'asc').fetch({
withRelated: [
{ instructions: (query) => { query.orderBy('step_number'); }},
'tags',
'ingredients',
'ingredients.alternatives',
'ingredients.tags'
]
});
最佳答案
请按以下步骤尝试
Recipes.query(function (qb) {
qb.orderByRaw('LOWER(name) asc');
})
.fetchAll({
withRelated: [{
'instructions': (query) => query.orderBy('step_number'),
'tags',
'ingredients',
'ingredients.alternatives',
'ingredients.tags'
}]
})
值得注意的是postgresql sorting依赖于操作系统
关于node.js - 书架顺序忽略大小写,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44376654/