【问题标题】:Querying id's that have multiple status conditions查询具有多个状态条件的id
【发布时间】:2021-10-22 20:25:45
【问题描述】:

我在 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 时才返回 ID。我还想返回状态 X 的日期。我不知道这样做的好方法。我需要加入两个不同状态条件的子查询吗?

【问题讨论】:

    标签: sql subquery impala


    【解决方案1】:

    这应该可行..

        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

    【讨论】:

    • 谢谢,完美而简单。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 2017-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多