如何在 sequelize 中连接列?
how can concat columns in sequelize?
我正在使用 sequelize 和 node.js。我想将 PrimaryPractice 模型的列值相互连接。
我怎么解决这个问题?
这是我的代码:
ProviderPayer.findAll({
where: {
orgPayerId: {
[Op.in]: orgPayerIds
}
},
attributes: ["effective_date"],
include: [{
model: PayerTracks,
attributes: ["title"],
as: "payers",
},
{
model: User,
where: {
id: {[Op.in]: userIds},
deletedAt: null,
status: {[Op.ne]: STATUS.INACTIVE}
},
attributes: ["id"],
include: [
{
model: PrimaryPractice,
as: "primaryPractice",
attributes: [
"addressStreetPrimPract",
"addressStreet2PrimPract",
"addressCityPrimPract",
"addressStatePrimPract",
"addressZipPrimPract"]
}
]
}
]
})
如果您的 DBMS 具有类似 CONCAT
的功能,那么您可以尝试这样的操作:
attributes: [
[
sequelize.fn('CONCAT',
sequelize.col('addressStreetPrimPract'), ', ',
sequelize.col('addressStreet2PrimPract'), ', ',
sequelize.col('addressCityPrimPract'), ', ',
sequelize.col('addressStatePrimPract'), ', ',
sequelize.col('addressZipPrimPract')
),
'concatenated_fields_alias'
],
],
attributes: [sequelize.fn('CONCAT',
sequelize.col('addressStreetPrimPract'), ' ',
sequelize.col('addressStreet2PrimPract'), ' ',
sequelize.col('addressCityPrimPract'), ' ',
sequelize.col('addressStatePrimPract'), ' ',
sequelize.col('addressZipPrimPract')
),
'name_of_concatenated_fields'
]
你可以看到这个SO也可以参考
我正在使用 sequelize 和 node.js。我想将 PrimaryPractice 模型的列值相互连接。 我怎么解决这个问题? 这是我的代码:
ProviderPayer.findAll({
where: {
orgPayerId: {
[Op.in]: orgPayerIds
}
},
attributes: ["effective_date"],
include: [{
model: PayerTracks,
attributes: ["title"],
as: "payers",
},
{
model: User,
where: {
id: {[Op.in]: userIds},
deletedAt: null,
status: {[Op.ne]: STATUS.INACTIVE}
},
attributes: ["id"],
include: [
{
model: PrimaryPractice,
as: "primaryPractice",
attributes: [
"addressStreetPrimPract",
"addressStreet2PrimPract",
"addressCityPrimPract",
"addressStatePrimPract",
"addressZipPrimPract"]
}
]
}
]
})
如果您的 DBMS 具有类似 CONCAT
的功能,那么您可以尝试这样的操作:
attributes: [
[
sequelize.fn('CONCAT',
sequelize.col('addressStreetPrimPract'), ', ',
sequelize.col('addressStreet2PrimPract'), ', ',
sequelize.col('addressCityPrimPract'), ', ',
sequelize.col('addressStatePrimPract'), ', ',
sequelize.col('addressZipPrimPract')
),
'concatenated_fields_alias'
],
],
attributes: [sequelize.fn('CONCAT',
sequelize.col('addressStreetPrimPract'), ' ',
sequelize.col('addressStreet2PrimPract'), ' ',
sequelize.col('addressCityPrimPract'), ' ',
sequelize.col('addressStatePrimPract'), ' ',
sequelize.col('addressZipPrimPract')
),
'name_of_concatenated_fields'
]
你可以看到这个SO