查询具有多个状态条件的 ID
Querying id's that have multiple status conditions
我在Impala中有以下数据:
ID
STATUS
Date
1
a
date1
1
b
date2
1
c
date3
2
a
date4
2
c
date5
3
a
date6
3
b
date7
3
c
date8
3
x
date9
我想构造一个查询,仅当 ID 具有状态(A 或 B 或 C)和状态 X 时才 return 查询 ID。我还想 return 日期对于状态 X。我想不出一个好的方法来做到这一点。我是否需要加入两个具有不同状态条件的子查询?
这应该有效..
select distinct id, date
from t1
where status = 'x'
and id in
(select id
from t1
where status in ('a','b','c')
)
db-fiddle 这里:https://www.db-fiddle.com/f/uHVNeriETsXkLPV5kiSC1z/0
我在Impala中有以下数据:
ID | STATUS | Date | |||||||
---|---|---|---|---|---|---|---|---|---|
1 | a | date1 | |||||||
1 | b | date2 | |||||||
1 | c | date3 | |||||||
2 | a | date4 | |||||||
2 | c | date5 | |||||||
3 | a | date6 | |||||||
3 | b | date7 | |||||||
3 | c | date8 | |||||||
3 | x | date9 |
我想构造一个查询,仅当 ID 具有状态(A 或 B 或 C)和状态 X 时才 return 查询 ID。我还想 return 日期对于状态 X。我想不出一个好的方法来做到这一点。我是否需要加入两个具有不同状态条件的子查询?
这应该有效..
select distinct id, date
from t1
where status = 'x'
and id in
(select id
from t1
where status in ('a','b','c')
)
db-fiddle 这里:https://www.db-fiddle.com/f/uHVNeriETsXkLPV5kiSC1z/0