我有这个要求:
UPDATE PEOPLE SET ID_STATE = 5 WHERE ID_STATE IN (3,4);
我会提出相同的要求,但如果我不知道,ID_STATE
只是labelStatePeople
SELECT ID_STATE FROM STATE_PEOPLE WHERE labelStatePeople = 'blue';
例子:
$1 = SELECT ID_STATE FROM STATE_PEOPLE WHERE labelStatePeople = 'blue';
$2 = SELECT ID_STATE FROM STATE_PEOPLE WHERE labelStatePeople = 'yellow';
$3 = SELECT ID_STATE FROM STATE_PEOPLE WHERE labelStatePeople = 'red';
最终要求: UPDATE PEOPLE SET ID_STATE = $1 WHERE ID_STATE IN ($2,$3);
只需有一个子查询即可返回那些陌生人的ID_STATE值:
UPDATE PEOPLE
SET ID_STATE = 5
WHERE ID_STATE IN (SELECT ID_STATE FROM STATE_PEOPLE
WHERE labelStatePeople = 'strange'
and ID_STATE IS NOT NULL)
(ID_STATE IS NOT NULL
如果该列为,则可以删除子查询的一部分NOT NULL
。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句