我有一個查詢正在更新其中傳遞的用戶的狀態。更新在查詢中傳遞的用戶的狀態
update userinfo set status=1 where id in
(select id from userinfo where name in ('viki','nik','mike'));
查詢工作正常。 但問題是假設'nik'的名字不存在於數據庫中。 然後查詢將不適用於'nik'之後的其餘用戶。 我怎樣才能確保更新查詢運行每個人?
在此先感謝。
我有一個查詢正在更新其中傳遞的用戶的狀態。更新在查詢中傳遞的用戶的狀態
update userinfo set status=1 where id in
(select id from userinfo where name in ('viki','nik','mike'));
查詢工作正常。 但問題是假設'nik'的名字不存在於數據庫中。 然後查詢將不適用於'nik'之後的其餘用戶。 我怎樣才能確保更新查詢運行每個人?
在此先感謝。
它將起作用,無論您的表中是否存在userinfo
表中的一個名稱。
還有:你爲什麼要運行第二個查詢來從你想更新的同一張表中獲得一個id列表?只要去:
UPDATE userinfo
SET status = something
WHERE name IN ('viki','nik','mike');
它會工作。查詢:
select id from userinfo where name in ('viki','nik','mike')
將返回ID對'viki
「和」 mike
「即使」 nik
「是不存在的。
爲什麼你認爲它不起作用?