gpt4 book ai didi

MySQL - 从 SELECT 插入 INSERT INTO,并在 Node Express 中传入值

转载 作者:行者123 更新时间:2023-11-29 15:44:18 25 4
gpt4 key购买 nike

我正在尝试插入传入的 RFID 卡值及其来自另一个表(即卡的用户)的关联数据。

我正在使用 mysql npm 库。

let uid = req.body.uid;

let connection = mysql.createConnection(config);

connection.connect();

const query = `
INSERT INTO record (uid, userId, user, timestamp)
SELECT ?, userId, concat(name, ' ', lastname), NOW()
FROM card c
LEFT JOIN user u on u.id = c.userId
WHERE c.uid = ?
`;

connection.query(query, uid, function (error, results, fields) {
if (error) {
console.log(error);
res.status(500).send({
message: error
});
} else {
console.log(results);
res.status(200).send({
message: results
});
}
});

connection.end();

如果我不添加 WHERE 子句,代码将插入所有可用的卡片,而不是读取/传入的卡片。

但是,由于 ? 变量,WHERE 子句给了我一个错误。

我无法理解如何仅对一张卡完成INSERT。也许我什至不需要这个条款。

最佳答案

我是弱智。这是工作查询。

INSERT INTO record (uid, userId, user, timestamp) 
SELECT c.uid, userId, concat(name, ' ', lastname), NOW()
FROM card c
LEFT JOIN user u on u.id = c.userId
WHERE c.uid = ?

关于MySQL - 从 SELECT 插入 INSERT INTO,并在 Node Express 中传入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57245425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com