簡體   English   中英

SQL:如何根據一個 ID 存在 2 個不同列的值來過濾 SQL 中的行?

[英]SQL: How to filter rows in SQL based on existence of a 2 different column's value against one ID?

我有一個包含以下列的表格:

Row Number         |         ID         | Type
1.                           01             A
2.                           01             B
3.                           02             A
4.                           03             B

我想在給定 ID 的條件下過濾 Tableased,如果類型AB都存在,那么它應該只保留類型B ,但如果它不存在,那么它不應該做任何事情。

所以在這種情況下,結果表看起來像:

Row Number         |         ID         | Type
2.                           01             B
3.                           02             A
4.                           03             B

我怎樣才能做到這一點?

where table 原始表名是t

您想知道類型 A 是否存在類型 B,這聽起來像是存在的用例

select *
from t
where not exists (
  select * from t t2 
  where t2.Id = t.Id and t2.Type = 'B' and t.Type = 'A'
);

暫無
暫無

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

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