select 
	nome_tipo_classificacao, 
	t1.titulo, t1.id_titulo 
from 
	(
		select 
			group_concat(concat(t.nome_token,'-',ct.id_tipo_token) order by ordem) as titulo, 
			id_titulo 
		from 
			tokens t
		left join 
			frases 
		on 
			id_token=id_chave_token
		left join 
			classificacoes_tokens ct
		on 
			ct.nome_token = acentuada 
		group by 
			id_titulo
	) t1 
left join 
	campos_cursos cc 
on 
	t1.id_titulo = cc.id_titulo 
left join 
	tipos_classificacoes tc 
on 
	id_chave_tipo_classificacao = cc.id_tipo_classificacao 
where 
	nome_tipo_classificacao = "curso" 
or 
	nome_tipo_classificacao = "titulo_do_curso" 
order by id_curso;


SELECT t2.titulo2 tokens_de_busca, group_concat(t2.id) atribuicao from (SELECT distinct      nome_tipo_classificacao,  t1.titulo as titulo2, t1.id_titulo as id FROM     (         SELECT             GROUP_CONCAT(                 CASE                      WHEN ct.id_tipo_token IN (1, 2, 3, 4, 7, 20, 22)                      THEN t.nome_token                     ELSE NULL                 END                 ORDER BY ordem                 SEPARATOR '-'             ) AS titulo,             id_titulo         FROM             tokens t         LEFT JOIN             frases ON id_token = id_chave_token         LEFT JOIN             classificacoes_tokens ct ON ct.nome_token = acentuada         GROUP BY             id_titulo     ) t1 LEFT JOIN     campos_cursos cc ON t1.id_titulo = cc.id_titulo LEFT JOIN     tipos_classificacoes tc ON id_chave_tipo_classificacao = cc.id_tipo_classificacao WHERE     nome_tipo_classificacao = "curso"     OR nome_tipo_classificacao = "titulo_do_curso" ORDER BY      id_curso) as t2 group by t2.titulo2;
