'SELECT count(`houses`.`color`) AS `count`,
`houses`.`color`
FROM `user_houses`
JOIN `houses` ON `houses`.`id` = `users_houses`.`house`
GROUP BY `houses`.`color`'
这是我用来按颜色属性(在房屋表格中)对房屋进行计数的语句。
每个房子都有一个样式名称。我需要计算不同的样式,而不是不同的颜色。问题在于样式在另一个表(样式)中,该表具有一个house_id,该house_id从房屋中匹配house_id。
我已经试过了:
'JOIN houses AND styles SELECT count(`style`.`color`) AS `count`, `houses`.`style` FROM `user_houses` 'JOIN `houses` ON `houses`.`id` = `user_houses`.`house` GROUP BY `houses`.`color`'
最佳答案
提供有限的信息:您需要加入具有风格的房屋。
即使您提到的查询,也有不必要的user_houses连接。尝试这个 :
SELECT count(`styles`.`house_id`) AS `count`,
`styles`.`house_id`
FROM `houses`
INNER JOIN `styles` ON `houses`.`house_id` = `styles`.`house_id`
GROUP BY `styles`.`house_id`