sql - 如何显示符合客户标准的房产总数?
问题描述
我的属性表有 propertyNo、street、city、postcode、type、rooms、rent、OwnerNo、staffNo 和 branchNo 列,而我的 Client 表有 clientNo、fname、lame、tellNo、prefType 和 maxrent 列
SELECT client.ClientNo, propertyforrent.PropertyNo,client.prefType, fname
FROM client INNER JOIN
propertyforrent
ON propertyforrent.type = client.prefType
我试过了,但它没有返回与客户端 prefType 匹配的所有属性的总和
解决方案
使用左连接进行故障排除
这LEFT JOIN
将向您显示最少的客户以及属性是否与相关记录匹配。
SELECT
x.ClientNo
, y.PropertyNo
, x.prefType
, fname
FROM client x
LEFT JOIN propertyforrent y ON y.type = x.prefType
使用分组依据和计数
解决查询中的任何错误后,切换到join
:
SELECT
x.ClientNo
, x.prefType
, COUNT(y.type) AS num_matches
FROM client x
JOIN propertyforrent y ON y.type = x.prefType
GROUP BY
x.ClientNo
, x.prefType
推荐阅读
- docker - 无法访问在 docker swarm 集群中运行的服务
- linux - 不带 -t 选项的 `column` 实用程序
- android - 在导航架构组件中手动将片段添加到后台堆栈中
- python - 如何将数据库连接放在单独的文件中并在 python 中的另一个文件中使用
- javascript - 使用长字符串时出现键错误
- jquery - 如何在角度输入字段上使用jquery触发输入按键
- javascript - 反应传单 GeoJSON `onClick`
- configuration - 寻找配置服务器事件
- reactjs - 更改 Material UI 的 KeyboardDatePicker 的 Button 变体
- c# - 用c#读取然后更新二进制文件中记录的最佳方法是什么