如何通过对 Sequelize 的查询按顺序设置 collate en_us.UTF-8
How can set collate en_us.UTF-8 in order by query on Sequelize
在 postgres 上,排序方式如下所示。
ORDER BY convert_to(lower(column COLLATE "en_US"), 'UTF8')
但是在 sequelize 中,我应该把“整理”查询放在哪里以及如何写。
// This is omitted "collate" query
sequelize.fn('convert_to', sequelize.fn('lower', sequelize.col(column)), '\'UTF8\''), 'ASC')
尝试将参数作为 sequelize.literal()
传递给 lower()
您也不需要在“UTF8”中包含单引号,只需传递字符串即可。
order: [
sequelize.fn(
'convert_to',
sequelize.fn(
'lower',
sequelize.literal('column COLLATE "en_US"')
),
'UTF8'),
'ASC')
]
在 postgres 上,排序方式如下所示。
ORDER BY convert_to(lower(column COLLATE "en_US"), 'UTF8')
但是在 sequelize 中,我应该把“整理”查询放在哪里以及如何写。
// This is omitted "collate" query
sequelize.fn('convert_to', sequelize.fn('lower', sequelize.col(column)), '\'UTF8\''), 'ASC')
尝试将参数作为 sequelize.literal()
传递给 lower()
您也不需要在“UTF8”中包含单引号,只需传递字符串即可。
order: [
sequelize.fn(
'convert_to',
sequelize.fn(
'lower',
sequelize.literal('column COLLATE "en_US"')
),
'UTF8'),
'ASC')
]