1
我想創建一個MyQSL查詢類似追加到MySQL的結果,如果在不爲1列的結果
SELECT person, city FROM mytable
UNION
SELECT 'BOB', 'Chicago' IF 'BOB' NOT IN (SELECT person FROM mytable);
如果「BOB」在結果未返回,我想給他追加到結果並列舉他在芝加哥。如果BOB確實回來了,不管他的位置是什麼,我都不想把他追加到芝加哥。
如果我完全匹配列,我可以做這項工作,但如果他被列爲除芝加哥以外的其他地方,我最終會得到多個BOB結果。
SELECT person, city FROM mytable
UNION
SELECT 'BOB', 'Chicago'
但我不想匹配的位置。只是這個人的名字。
謝謝那有效......但什麼是「雙重」? – Chris
'dual'對於那些喜歡總是指定表名的人來說,當沒有具體的表來從中獲取數據時,'dual'是一種方便。在mySql和MSSQL中它不是必需的,因爲它在Oracle中。但是,如果您需要指定WHERE,它仍然是必需的。例如:'select 1'與'select 1 from dual'相同,但'select'ok'where 0 = 0'不起作用,您需要'dual'在這裏,'select'ok'from dual',其中0 = 0 ' –