我正在尝试使用单个Statement在SQL中执行SELECT和UPDATE。经过一些Google FU之后,我似乎找不到任何文档。也许我在找错东西。
inquirer
.prompt([{
name: "updateID",
type: "input",
message: "What's the ID of the product you'd like to update?"
},
{
name: "updateQuantity",
type: "input",
message: "How many units would you like to add to inventory?"
}]).then(function(answer) {
connection.query("SELECT id, stock_quantity FROM products WHERE ?",
{
id: parseInt(answer.updateID)
}, function(err, res) {
})
})
我希望有一种方法可以在单个语句中执行SELECT和UPDATE。
答案 0 :(得分:1)
除非您特别想读取该产品的数据,否则您不需要 在SELECT
值之前进行UPDATE
。根据您的代码,此查询应执行您想要的操作:
UPDATE products
SET stock_quantity = stock_quantity + ?
WHERE id = ?
如果您也想读取数据,则必须分别执行SELECT
和UPDATE
查询。
答案 1 :(得分:0)
我想通过ID在表中选择一行,然后更新该行的一列中的值...
为了仅更新某些行,可以将单个UPDATE
query与WHERE
子句一起使用。
UPDATE <table> SET <column>=<value>
WHERE <id_column>=<id>;