我正在为 Postresql 11 在 Nodejs 上为 sequelize (6.5.x) 编写 RAW SQL。这是原始查询的示例:
const { QueryTypes } = require('sequelize');
let sql = "SELECT * from messages WHERE sender_id = 1";
const msgs = await sequelize.query(sql, { type: QueryTypes.SELECT });
如果 sender_id
存储在变量 senderID
中,如何在上面的原始查询中使用变量 senderID
?
最佳答案
你可以这样做
const { QueryTypes } = require("sequelize");
let sql = "SELECT * from messages WHERE sender_id = ?";
const msgs = await sequelize.query(sql, {
replacements: [senderID],
type: QueryTypes.SELECT,
});
或者const { QueryTypes } = require("sequelize");
let sql = "SELECT * from messages WHERE sender_id = :senderID";
const msgs = await sequelize.query(sql, {
replacements: { senderID },
type: QueryTypes.SELECT,
});
您可以在文档的 Replacement 部分找到更多详细信息
关于sequelize.js - 如何使用存储在变量中的值进行 RAW 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67188121/