我有两个表 - 第一个表我试图获取一个城市的总数。第二次,我试图获取单户住宅的总数。基本上,我想要一个城市中活跃且已发布的单户住宅的总数。我如何连接这两个表?
第一个选项适用于城市总数
SELECT sum(case when city_id = '4' then 1 else 0 end) ''
FROM #_property
WHERE status_id =7 AND published =1
第二个选项适用于单户住宅的总数
SELECT sum(case when property_type_id = '13' then 1 else 0 end) ''
FROM #_property_types
我不知道如何让两张桌子加入。
识别公共键 - 两个表之间的公共键可能类似于 property_id 或类似的东西。确保有一列可以连接表格。
连接表 - 使用 INNER JOIN 根据公共键组合表。
应用必要的过滤器 - 使用 WHERE 子句按 city_id、status_id、published 和 property_type_id 进行过滤。
就这样。
SELECT COUNT(*) AS total_count
FROM #_property p
INNER JOIN #_property_types pt ON p.property_id = pt.property_id
WHERE p.city_id = '4'
AND p.status_id = 7
AND p.published = 1
AND pt.property_type_id = '13';