簡體   English   中英

選擇一個表中只有一個值的行

[英]Select a row with just one value in a table

這是我的表看起來:

(我之前沒有說過,colum2是字符串類型,不是整數,對不起)

╔══════╦═══════╗
║ USER ║ COLOR ║
╠══════╬═══════╣
║ a    ║ Red   ║
║ b    ║ Blue  ║
║ c    ║ Blue  ║
║ b    ║ Red   ║
║ a    ║ Red   ║
║ c    ║ White ║
╚══════╩═══════╝

我只需要具有專門的顏色行=“紅”。
它必須返回“a”(“b”也包含值“Blue”)。

如何設置選擇? 謝謝並恭祝安康

SELECT  column1
FROM    TableName
GROUP   BY Column1
HAVING  COUNT(DISTINCT column2) = 1
        AND MAX(column2) = 1

這是另一種方式,

SELECT  column1
FROM    TableName
GROUP   BY Column1
HAVING  MAX(column2) = MIN(column2) AND
        MAX(column2) = 1

更新1

SELECT  user
FROM    TableName
GROUP   BY user
HAVING  SUM(color = 'red') = COUNT(*)

更有效的方法是比較minmax

select column1
from t
group by column1
having min(column2) = max(column2) and min(column2) = 1

如果列可以采用NULL值,則還需要排除這些值:

select column1
from t
group by column1
having min(column2) = max(column2) and min(column2) = 1 and count(column2) = count(*)
Select distinct Column1 from Table1 Where Column2='1'

或者,如果它是整數,那么:

Select distinct Column1 from Table1 Where Column2=1

假設Table1是表名

暫無
暫無

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

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