Considera:
select *
from tab1
where char_length(type) - char_length(replace(type, ',', '')) + 1 = qta
Espressione char_length(type) - char_length(replace(type, ',', ''))
ti dà il numero di virgole nella stringa. Aggiunta di 1
a quello ti dà il numero di parole nella stringa.
id | cod | type | qta -: | :-- | :---------- | --: 1 | aaa | aaa,bbb,ccc | 3 2 | aaa | ddd | 1 4 | aaa | ggg,hhh | 2