sql >> Base de Datos >  >> RDS >> Mysql

mysql cuenta el total de un campo con valores separados por comas

Verifique esto, he usado Postgresql, con columnas "id", "comma_sep_string" con el nombre de tabla "string_comma", cuando hay un conteo, mostrará ese registro y si el conteo es cero, no mostrará ese registro en particular y verá la captura de pantalla para el resultado de la consulta dada

select temp1.id, temp1.comma_sep_string, sum(count) from
(select temp.id, temp.comma_sep_string, temp.years, count(*) as count
from
(SELECT
ID, comma_sep_string,
regexp_split_to_table(comma_sep_string, E',') AS years
FROM string_comma) as  temp
where temp.years::int > 1980
group by temp.id, temp.years, temp.comma_sep_string) as temp1
group by temp1.id, temp1.comma_sep_string