是否有任何方法可以在单个查询中选择并更新记录?
我试过这个:
UPDATE arrc_Voucher
SET ActivatedDT = now()
WHERE (SELECT VoucherNbr, VoucherID
FROM arrc_Voucher
WHERE ActivatedDT IS NULL
AND BalanceInit IS NULL
AND TypeFlag = 'V'
LIMIT 1 )
我希望运行select查询并获取与where子句匹配的第一条记录,更新该记录中的ActivatedDT字段,但出现以下错误:
1241-操作数应包含1列
有什么想法吗?
最佳答案
怎么样:
UPDATE arrc_Voucher
SET ActivatedDT = NOW()
WHERE ActivatedDT IS NULL
AND BalanceInit IS NULL
AND TypeFlag = 'V'
LIMIT 1;