我試圖快速確定user_ID是否是「目標」的所有者。我相信我的SQL查詢很好,但我試圖找到一個檢查結果的好方法!如何檢查SELECT EXISTS是否返回值?
在這種情況下,無論我爲$ obj_id或$ user_id放置什麼,我的函數都會返回true。我認爲這是因爲mysql_num_rows甚至將一個錯誤的結果作爲一個行計數?那麼,我應該用什麼PHP代碼來檢查結果是否存在?
請注意,我想短暫而優雅的東西!我知道我可以做很長的路(檢查計數(*),返回mysql_assoc然後檢查計數值...),但這是很長的囉嗦和醜陋。
任何想法?謝謝!
$query = "SELECT EXISTS (SELECT * FROM goals WHERE goal_ID='$obj_id' AND user_ID='$user_id')";
if (@mysql_num_rows(mysql_query($query))!=1) {
return false;
} else {
return true;
}
使用'COUNT(*)'應該是首選,因爲它僅返回一行,而不是潛在的數以百萬計。 – Arjan 2013-10-09 15:55:52