簡體   English   中英

MySQL查詢與A列不同,所有查詢在B列中都沒有特定值

[英]MySQL query all distinct from column A where none of them has a specific value in column B

有人可以為我指出正確的方向以尋求進一步的建議,或者給我有關以下任務的任何提示嗎?

我想列出來自A列的MySQL表中所有在B列中沒有特定值的不同值。我的意思是,相同的A值在B中的任何行中都沒有此特定值。 取下表(將該特定值為1):

column A  | column B
----------------------
apple     |
apple     |
apple     | 1
banana    | anything
banana    |
lemon     |
lemon     | 1
orange    |

我想得到以下結果:

banana
orange

謝謝。

由於存在空值,因此我還向列B添加了nvl條件。

ORACLE:

SELECT DISTINCT COLUMN_A  FROM MY_TABLE
WHERE COLUMN_A  NOT IN (SELECT COLUMN_A FROM MY_TABLE WHERE nvl(COLUMN_B,'dummy')  = '1');

MYSQL:

SELECT DISTINCT COLUMN_A  FROM MY_TABLE
WHERE COLUMN_A  NOT IN (SELECT COLUMN_A FROM MY_TABLE WHERE IFNULL(COLUMN_B,'dummy')  = '1');

這可能對您有幫助:

SELECT DISTINCT A FROM MY_TABLE
WHERE A NOT IN (SELECT DISTINCT A FROM MY_TABLE WHERE B = 1)
SELECT * FROM your_Table WHERE Column_A NOT IN(
    SELECT Column_A FROM Your_Table WHERE Column_B = '1'
)

該語句為您提供了預期的結果:

select COLUMNA from myTable where COLUMNA not in (select distinct COLUMNA from myTable where columnB
=1) group by COLUMNA;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM