Considerar:
select *
from tab1
where char_length(type) - char_length(replace(type, ',', '')) + 1 = qta
Expressão
char_length(type) - char_length(replace(type, ',', ''))
fornece o número de vírgulas na string. Adicionando 1
para isso lhe dá o número de palavras na string. Demonstração no DB Fiddle :
id | cod | type | qta -: | :-- | :---------- | --: 1 | aaa | aaa,bbb,ccc | 3 2 | aaa | ddd | 1 4 | aaa | ggg,hhh | 2