带有 COUNT ON LEFT JOIN 的 MySQL 查询

标签 mysql sql join left-join

我有 2 张 table :

**Table A**              **Table B**
idTableA                 idTableB
Code                     idTableA
Description              Description

在表 B 中,我可以有更多行链接到表 A。

所以我需要一个返回表 A 的所有列和 COUNT(*) FROM 表 B WHERE A.idTableA=B.idTableA

我尝试过这个,但不起作用:

SELECT A.*, B.COUNT(*) FROM TableA A LEFT JOIN TableB B ON A.idTableA = B.idTableA

最佳答案

这是正确的语法:

SELECT A.*, COUNT(B.idTableA)
FROM TableA A LEFT JOIN
     TableB B
     ON A.idTableA = B.idTableA
GROUP BY A.idTableA;

您似乎不熟悉 SQL。您应该了解 joingroup by。这些是该语言的基本概念。

关于带有 COUNT ON LEFT JOIN 的 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23796662/

相关文章:

mysql - 选择在给定集合之外没有属性的项目

android - SQLite3最大列宽(文本)

sql - 获取行中日期值之前的最新日期

sql - 使用动态列表使用带有 LIKE 关键字的左外连接的 on 子句

mysql - 选择未标记的文档

php - 如何按两列对查询进行计数和分组?

使用 SUM 的 MYSQL 查询

数据库 |如何连接两个表以获得不同的行?

mysql - WHERE 子句中的两个 "="比较查询速度下降

php - 尝试循环访问 MySQL 查询的结果时收到注释已弃用的错误