如何对一个SQL字符串执行“选择并更新”查询

本文关键字:选择 执行 更新 查询 选择并更新 字符串 SQL 一个 | 更新日期: 2023-09-27 17:49:21

我想在我的MySQL数据库上做这样的事情。

SELECT * FROM itemsordered WHERE purchaseOrder_ID = '@purchaseorderID';

然后检索itemsOrdered数据库上的CCD_ 2和已订购的项目数。

string stockID = (dr["stock_ID"].ToString())
string restockQuantity = (dr["quantity"].ToString())

然后用它们来补充库存中的现有数量DB

UPDATE stocksdb SET quantity = @restockQuantity WHERE stock_ID = @stockID

有更简单的方法吗?

itemsordered数据库列

itemsOrdered_ID purchaseORder_ID stock_ID quantity status datereceived

stocksdb数据库列

stock_ID name onHandQuantity pricePerPiece dateUpdated

如何对一个SQL字符串执行“选择并更新”查询

UPDATE stocksdb s
    INNER JOIN itemsordered i ON i.stock_ID = s.stock_ID
    SET quantity = i.quantity WHERE i.purchaseOrder_ID = '@purchaseorderID';

是的,有一种更简单的方法。你可以用stock_ID0这样UPDATE

UPDATE stocksdb s
INNER JOIN itemsordered i ON s.stock_ID = i.stockID
SET s.quantity = i.onHand
WHERE i.purchaseOrder_ID = '@purchaseorderID';

您可以在update语句中执行内部联接。

update stocksdb a inner join itemsordered b on a.stock_ID = b.stock_ID
set a.quantity = b.quantity
purchaseOrder_ID = '@purchaseorderID';

sql语句未经测试,但我认为您已经了解

欢呼