2012-01-26 137 views
0

在使用WHERE子句

$query = mysql_query("SELECT * FROM `pages` 
         WHERE parent_id = '0' 
          AND menu_location NOT IN (main,footer)"); 

我想選擇數據庫表中的所有網頁,父ID是0和頁面是不是在主菜單中MySQL數據庫表列從所有選擇或頁腳菜單,所以我想選擇所有除了這些頁面設置爲這些菜單之一。

有多個menu_location類型,所以我不相信我可以使用NOT NULL爲例。

我有一種感覺,我可能使用NOT IN聲明的背景下,但如果任何人都可以指出我在如何正確查詢數據庫的正確方向,我將非常感激。

編輯。

Table: 'pages' 
Table Columns: 'active', 'page_id', 'parent_id', 'order', 'site_id', 
       'page_name', 'page_display_name', 'page_location', 'page_type', 
       'menu_location' 
       (there are other columns but mainly for content, metadata etc). 

我只是單純的想選擇表中除了那些有主要和頁腳在menu_location列中的所有頁面。由於

+1

你應該**發表您的表結構**,和/或幾個例子行。你可能需要menu_location'main','footer'在重音之間,除非它們指向列 - 再次,沒有我們不知道的DDL。 – Konerak

+1

只是在黑暗中拍攝:NOT IN需要一系列的值,所以也許你應該把這個陳述寫成'NOT IN'('main','footer')' –

+0

LOL,謝謝弗朗切斯科 - 儘管如此 - 它......我快到了!非常感謝:D – zigojacko

回答

3

只是圍繞着主的廣告頁腳值與''

$query = mysql_query("SELECT * FROM `pages` 
         WHERE parent_id = '0' 
          AND menu_location NOT IN ('main','footer')"); 
2

簡單

SELECT * FROM `pages` 
     WHERE parent_id = '0'AND menu_location NOT IN ('main','footer')