table_a
"id" "countries"
"1" "US,CA"
"2" "US,CA"
"3" "US,AU"
"4" "US,UK"
"5" "US"
table_b
"id" "country" "total"
"1" "US" "0"
"2" "CA" "0"
"3" "UK" "0"
"4" "AU" "0"
的Sql
update table2
set total = (
select count(*) from table1 where FIND_IN_SET(country, countries)
)
WHERE country IN ('US','UK') // Are all other countries counted here or only these?
我尝试使用table_a
中的数据更新table_b上面的sql运行正常,但是当它运行时实际选择了多少行?
逗号分隔值是我提供的。因此,在'US','UK'
的情况下,select count(id)
部分还会计算包含'AU','CA'
的行,或者只计算CSV中提供的行的行数。
我的想法是仅对我通过逗号分隔字符串提供的国家/地区代码运行计数,而不是全部。
这会计算全部或仅包含我在CSV字符串中提供的内容吗?