sql >> Databáze >  >> RDS >> Mysql

MYSQL:Použití GROUP BY s řetězcovými literály

Možná chcete něco jako:

GROUP BY IF(fullName LIKE '%/testfolder/%', 1, IF(fullName LIKE '%/testfolder2/%', 2, 3))

Klíčovou myšlenkou je pochopit, že výraz jako fullName LIKE foo AND fullName LIKE bar je, že celý výraz bude nutně vyhodnocen buď jako TRUE nebo FALSE , takže z toho můžete získat pouze dvě celkové skupiny.

Pomocí IF výraz vrátí jeden z několika různé hodnoty vám umožní získat více skupin.

Mějte na paměti, že to nebude nijak zvlášť rychlé. Pokud máte velmi velkou datovou sadu, měli byste prozkoumat další způsoby ukládání dat, které nebudou vyžadovat LIKE srovnání k seskupení.



  1. Co když potřebuji velmi velké ID automatického přírůstku?

  2. ERROR 1115 (42000):Neznámá znaková sada:'utf8mb4'

  3. Zkontrolujte připojení k databázi, jinak zobrazte zprávu

  4. ERD notace v datovém modelování