sql - 如何汇总 JOIN 查询的 NULL 结果
问题描述
我写了一个左连接查询,它返回所有的 NULL。
SELECT JourneyID,`TrainSeatID`, PassengerID FROM `TrainSeating`
LEFT JOIN Passenger ON TrainSeating.TrainSeatID = Passenger.PassTrainSeatID
WHERE PassengerID IS NULL;
有谁知道我如何汇总这些 NULLS 并将总数包含在数据集中?
编辑:我想计算来自特定 JourneyID 的 NULL 返回量。
非常感谢!
解决方案
您可以使用COUNT()
获取TrainSeating
没有乘客的行数:
SELECT COUNT(*)
FROM TrainSeating LEFT JOIN
Passenger
ON TrainSeating.TrainSeatID = Passenger.PassTrainSeatID
WHERE PassengerID IS NULL;
编辑:
如果你想要这个,JourneyId
那么聚合
SELECT ts.JourneyId, COUNT(*)
FROM TrainSeating ts LEFT JOIN
Passenger p
ON ts.TrainSeatID = p.PassTrainSeatID
WHERE p.PassengerID IS NULL
GROUP BY ts.JourneyId
推荐阅读
- php - 如何根据 Laravel 8 中同一张表中的另一列在列中存储值
- r - 提供 RMarkdown 输出而不进行版本控制
- fastapi - Python Fastapi。重定向后没有标题
- arduino - 使用 IFTTT 和 Arduino 物联网云
- r - 跨多个栅格层计算每个像素的分位数概率 0.05
- unix - 将 *nix 命令的结果通过管道传输到 Vim 的打开文件集中
- sql - 在 postgresql 中更新具有行号的表
- nginx - 如何使用 fastcgi_wrap 配置 Nginx?
- javascript - Alpine.js:如何使 ref 元素可见并专注于点击?
- .htaccess - 我无法使用 .htaccess 美化我网站的 URL