【问题标题】:Query result in Where clause in sqlite在 sqlite 中查询 Where 子句的结果
【发布时间】:2021-04-07 23:40:22
【问题描述】:

表格

id  actor   result
1   Aman    20
2   Aman    23
3   Ston    21
4   halazon 21
5   klawi   20
6   halazon 14

我想按首字母查询演员以及他们在表中的次数 我试过了,但没有成功:

查询

select actor, count(*) from actors 
where actor = (select actor from actors
where actor like 'A%' GROUP by actor order by actor ASC)

预期结果

Aman 2

【问题讨论】:

    标签: sql sqlite count subquery aggregate-functions


    【解决方案1】:

    我没有看到子查询的意义——另外,如果多个参与者的名称以 A 开头,它将失败(子查询将返回多行,不能与 @987654321 一起使用@)。

    如果你想直接过滤:

    select actor, count(*) as cnt
    from actors 
    where actor like 'A%' 
    group by actor 
    order by actor
    

    【讨论】:

    • 无论如何,如果子查询是必要的(在这种情况下不是:我完全同意你,但 如果是)正确的运算符将是 IN 而不是=。只是写这个作为将来的参考。
    猜你喜欢
    • 1970-01-01
    • 2012-01-31
    • 2018-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多