2011-09-02 58 views
3

我想從MYSQL查詢中排除某一行。如何從MySQL查詢中排除某一行

SELECT * FROM imdb WHERE genres LIKE 'Adventure' ORDER BY id DESC LIMIT 10 

這是一個電影網站,所以我retrive類似的冒險電影,但是這包括當前的影片。

所以我需要的東西是這樣的:

選擇喜歡冒險的電影,但不包括這個ID:1,然而,導致10部電影。

回答

7

如果你知道確切的ID(比如,ID = 1爲例),這樣做:

SELECT * FROM imdb WHERE genres LIKE 'Adventure' AND id <> 1 ORDER BY id DESC LIMIT 10 

看到這個SO post

+0

謝謝你,它的工作,實際上我這樣做過,但視覺在MySQL的結果證明我是想排除過多的ID,但文本中顯示行0 - 3(共4個,查詢耗時0.0012秒)[id:243 - 229],所以再次感謝你的光明。 –

+0

很高興我能幫到你。 :) – JW8

+0

@Wtstatscom:順便說一句,你可以點擊JW答案旁邊的空白「複選標記」符號來表示它對你有用=) – jadarnel27

5

也許這樣的事情?

SELECT * 
FROM imdb 
WHERE genres LIKE 'Adventure' AND 
    ID NOT IN (1) 
ORDER BY id DESC LIMIT 10 

你可以把你不想NOT IN後的括號之間包括ID列表。

編輯:你也可以把查詢這些括號之間,如果你知道你要排除的ID的特定組:

WHERE genres LIKE 'Adventure' AND 
    ID NOT IN (SELECT ID FROM imdb WHERE LeadActor='Pauly Shore') --You know you want to exclude him =) 
3
SELECT * FROM imdb WHERE genres LIKE 'Adventure' and id != 1 ORDER BY id DESC LIMIT 10 
0

,不顯示當前用戶的數據,下面是查詢

$sql = "SELECT u1.parent_id, m1.meta_value AS headline 
     FROM wp_vandor u1 
     JOIN wp_usermeta m1 ON (m1.user_id = u1.child_id AND m1.meta_key = 'headline') 
     WHERE m1.user_id!=$currentuser_id";