【问题标题】:how do I get the following postgres queries?如何获得以下 postgres 查询?
【发布时间】:2016-11-26 06:48:07
【问题描述】:

我有两个表:tableA 和 tableB。 TableA 有一个字段 idA,tableB 有一个记录 idB 和 idBPtrA,其中 idBptrA 是指向 tableA(idA 之一)的指针。

我想使用 postgres 从 TableA 中选择 tableB 中记录数最少的记录。

类似:

select idA,idB,count(idBPtrA) as c 
from tableA,tableB 
group by idBPtrA 
where idA=idB order by c

这当然不起作用并给我一个错误,但我认为它应该与那个非常相似......有什么想法吗?

【问题讨论】:

  • 最小数为0怎么办?
  • 那很好,那它应该选择它。 @戈登

标签: sql postgresql


【解决方案1】:

我认为这是您想要的查询:

select a.idA, count(b.idB) as c
from tableA a left join
     tableB b
     on a.idA = b.idptrA
group by a.idA 
order by c;

注意事项:

  • 使用表别名和限定列名(尤其是在您学习 SQL 时)。
  • 学习并使用正确、明确的JOIN 语法。简单规则:切勿FROM 子句中使用逗号。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-11
    • 2021-05-04
    • 2021-09-06
    • 2013-08-14
    • 2021-05-08
    • 2021-11-17
    • 2013-07-26
    • 1970-01-01
    相关资源
    最近更新 更多