我正在研究一個小應用程序,該程序允許我根據某些條件(如公司級別,付款,項目狀態等)來跟蹤我的工作優先級。sql - 排除結果集的結果,其中表值等於
我有一個頁面向我顯示所有公司及其分類(如上所述)的分類。
舉個例子,來拉我的所有普通待辦事項,我這樣做:
$pullAllGeneralTodosDone = "SELECT * FROM to_dos WHERE to_do_is_for = '$login_usrname' AND is_to_do_complete = 'no' AND company_to_do = 'COMPANY NAME HERE' ORDER BY company_to_do ASC;";
上述內容,說我有10家企業中的數據庫的一般待辦事項,那麼這個翻出所有十個。
現在我想要做的是,除了現在拉同樣的數據,我想排除任何返回的值,包括一個特定的公司名稱。例如,如果我有10家公司的普通Todos,其中一家公司被稱爲「公司A」,那麼我希望上面的查詢排除公司A,從而在我的頁面上顯示9個條目。
我會做一些像兩輪牛車 [僞代碼]
<?php
if ($row['company_to_do'] == 'COMPANY A') {
?>
code here with some css class that gets hidden because its COMPANY A which i dont want to see.
<?php } ?>
但這是太亂了...... 我知道它可以在SQL中完成,我一直都在尋找了一圈,發現NOT IN和NOT EXIST
,但它只是不工作,我有一個爛攤子......
編輯***
這些都是2瓦特ays按照以下答覆進行了嘗試,雖然我沒有得到任何錯誤,但「公司A」仍與其餘的信息一起顯示。
香港專業教育學院的嘗試:
$pullAllGeneralTodosDone = "SELECT * FROM to_dos WHERE to_do_is_for = '$login_usrname' AND is_to_do_complete = 'no' AND company_to_do = 'GENERAL TO-DO' AND company_to_do <> 'COMPANY A' ORDER BY company_to_do ASC;」;
和
$pullAllGeneralTodosDone = "SELECT * FROM to_dos WHERE to_do_is_for = '$login_usrname' AND is_to_do_complete = 'no' AND company_to_do = 'GENERAL TO-DO' AND company_to_do NOT IN ('COMPANY A') ORDER BY company_to_do ASC;」;
任何想法,我怎麼能合併一個NOT IN/NOT上面我的查詢存在嗎?
爲什麼向下票 – somdow 2014-12-04 20:04:39