2013-05-28 20 views
-2

我對Mysql有點困惑。mysql ifnull如何在行不存在時使用?

SELECT verified FROM user WHERE ID =?uid 

我想返回false,如果他們沒有行存在。這意味着在非行存在的情況下查詢返回false。

如何做到這一點。

+0

我不確定你在MySQL中用'return false'表示你的意思。 SQL命令會給你一個語法錯誤,或者它會產生結果。結果可能是一個空表(沒有選擇行)或一個數字(找到的項目的數量)等等。你是直接做這個查詢還是使用一個庫? – lurker

回答

0

如果沒有匹配該uid的行,則查詢將返回空白。 「返回false」的概念並不真正是關係數據庫機制的一部分。你只需返回你的結果,即使它們是空的。如果結果集爲空,您將檢查代碼,然後根據需要對其執行操作。

1

行不存在時從查詢返回NULL有什麼問題?

如果你想改變(雖然我看到的是沒有意義的),你可以做

SELECT EXISTS (SELECT verified FROM user WHERE ID = whatever) 

如果行存在該查詢返回1,否則爲0。