我是 SQL 新手,但我天真地認為這很簡單。
我有一個包含 FIRSTNAME 和 LASTNAME 列的 SQLITE 表。我想排除特定的個人,例如“Fred Smith”和“Joe Bloggs”。我使用了以下內容:
SELECT FIRSTNAME, SURNAME
FROM MyTable
WHERE (FIRSTNAME != 'Fred' AND LASTNAME != 'Smith');
但這不包括所有 FIRSTNAMEs = 'Fred' 和所有 LASTNAMEs = 'Smith'。我如何實作我所需要的?其次,我如何為多個人實作這一點,即“Joe Bloggs”和“Fred Smith”?
uj5u.com熱心網友回復:
我如何實作我所需要的?
SELECT FIRSTNAME,SURNAME FROM MyTable WHERE NOT (FIRSTNAME = 'Fred' AND LASTNAME = 'Smith');
或同等的
SELECT FIRSTNAME,SURNAME FROM MyTable WHERE (FIRSTNAME != 'Fred' OR LASTNAME != 'Smith');
我如何實作我所需要的?其次,我如何為多個人實作這一點,即“Joe Bloggs”和“Fred Smith”?
只需添加相關的 AND 子句。
SELECT FIRSTNAME,SURNAME FROM MyTable WHERE NOT (FIRSTNAME = 'Fred' AND LASTNAME = 'Smith') AND NOT (FIRSTNAME = 'Joe' AND LASTNAME = 'Bloggs');
uj5u.com熱心網友回復:
使用VALUES回傳所有要排除的名稱和EXCEPT運營商將它們過濾出來:
SELECT FIRSTNAME, LASTNAME FROM MyTable
EXCEPT
VALUES ('Fred', 'Smith'), ('Joe', 'Bloggs');
請參閱演示。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/405694.html
標籤:
