我有两张桌子 HOUSES 和国家
房屋
country_code - 西班牙的示例'ES'
国家
country_code - 西班牙的例子'ES'
houses_total - 示例20 - 在HOUSES表中找到的'ES'西班牙房屋总数
我需要计算 HOUSES 表格中每个 HOUSES.country_code 中的房屋数量,并使用该总数更新 COUNTRIES 表格的 COUNTRIES.houses_total
非常感谢
答案 0 :(得分:2)
假设特定国家/地区的行已存在于COUNTRIES
:
UPDATE COUNTRIES SET houses_total =
(SELECT COUNT(*) FROM HOUSES WHERE HOUSES.country_code = 'ES')
WHERE country_code = 'ES' LIMIT 1;
未经测试,但它应该有效。
答案 1 :(得分:0)
使用join with update:
尝试以下:
Update countries as c
left join (SELECT COUNT(*) as totalcount,country_code
FROM HOUSES
GROUP BY country_code) as tc
on c.country_code =tc.country_code
set c.houses_total =tc.totalcount