mysql - 带限制条件的sql语句groupby

标签 mysql sql sql-server

我想做的是返回卡车车主总数超过指定限制的所有记录 在下面的情况下,假设总限制为 3,我想获取所有注册了 3 辆或更多卡车的车主

所以查询如果限制是 3 应该只返回 metro trans 因为他们有 3 辆或更多卡车

这是我的数据库结构

tbl_trucks
id   owner_id  .....
1    12
2    12
3    13
4    12

tbl_truck_owners
id   owner
12   metro trans
13   mush elec

如何将限制添加到我的sql语句中

这是我试过的

SELECT 
     COUNT(tbl_trucks.owner_id), tbl_truck_owners.owner
      FROM tbl_trucks
        LEFT JOIN tbl_truck_owners ON tbl_trucks.owner_id = tbl_truck_owners.id

        WHERE              //stuck at adding the limit

        GROUP BY owner_id"

如何添加限制

最佳答案

使用 HAVING 语句:

SELECT COUNT(tbl_trucks.owner_id), tbl_truck_owners.owner
FROM tbl_trucks
LEFT JOIN tbl_truck_owners ON tbl_trucks.owner_id = tbl_truck_owners.id
GROUP BY owner_id
HAVING COUNT(tbl_trucks.owner_id) >= 3

关于mysql - 带限制条件的sql语句groupby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45899771/

相关文章:

sql - 基于其他参数结果的 SSRS 灰显参数

java - MySQL/JDBC 问题

sql - 为什么派生列组件的表达式不能在 SSIS 中使用空值?

mysql - 如何以与在数据库服务器上完成的方式大致相同的方式检查约束

MySQL 错误 : Duplicate entry 'xxx' for Primary Key

mysql - SQL : 2 columns in 1 in result set

mysql - 同义词列表 : What request to use

sql-server - 如何在 T-SQL 中编写 LIKE 以显示除包含 ":","-","~"的行之外的所有行?

php - Javascript 文本框钱打字

mysql - 查询多个表相同的表具有不同的值Mysql