繁体   English   中英

我如何获得以下postgres查询?

[英]how do I get the following postgres queries?

我有两个表: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

这当然是行不通的,但给我一个错误,但是我认为应该与之非常相似...有什么想法吗?

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

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子句中使用逗号。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM