首页 > 解决方案 > 如何显示符合客户标准的房产总数?

问题描述

我的属性表有 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 匹配的所有属性的总和

标签: sqlxampp

解决方案


使用左连接进行故障排除

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

推荐阅读