Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MYSQL:Usando GROUP BY com literais de string


Talvez você queira algo como:
GROUP BY IF(fullName LIKE '%/testfolder/%', 1, IF(fullName LIKE '%/testfolder2/%', 2, 3))

A ideia chave a entender é que uma expressão como fullName LIKE foo AND fullName LIKE bar é que a expressão inteira será necessariamente avaliada como TRUE ou FALSE , então você só pode obter dois grupos no total.

Usando um IF expressão para retornar um de vários valores diferentes permitirão que você obtenha mais grupos.

Tenha em mente que isso não será particularmente rápido. Se você tiver um conjunto de dados muito grande, explore outras maneiras de armazenar os dados que não exigirão LIKE comparações para fazer o agrupamento.