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

Jak mohu seskupit pole pomocí mysql?

Pokud chcete pouze kombinovat barvy a pole obrázků:

SELECT v_ebt, CONCAT("color: ", colors, "; image: ", image) AS Data FROM table;

Chcete-li získat všechna data vertikálně v jednom sloupci a přesto umožnit řazení podle společného identifikátoru, zvažte:

SELECT 1 AS Srt, v_ebt AS Grp, v_ebt AS Data FROM docs
UNION SELECT 2, v_ebt, CONCAT("color: ", colors, ", image: ", image) 
     FROM docs
ORDER BY Grp, Srt;

Pokud chcete zřetězit více řádků dat do jednoho řetězce, prozkoumejte funkci GROUP_CONCAT.

SELECT v_ebt, GROUP_CONCAT(CONCAT("color: ", colors, ", image: ", image, Char(10)+Char(13))
                           ORDER BY CONCAT("color: ", colors, ", image: ", image, Char(10)+Char(13))) AS list
FROM table
GROUP BY v_ebt;

Nelze přimět housle pro práci s Char(10) + Char(13) ani zřetězení s + a nemám MySQL k testování, ale doufám, že vám to pomůže.

Pak namísto pokusu o to v rámci dotazu existuje možnost vytvořit sestavu, která bude třídit a seskupovat data v_ebt. V Accessu by to bylo jednoduché a očekávám, že nástroje pro vytváření sestav MySQL a Crystal Reports to zvládnou.




  1. Proveďte alembický upgrade ve více schématech

  2. Je ODP.NET vyžadován pro klienta Oracle 11g?

  3. java - předávání pole v uložené proceduře Oracle

  4. Existuje funkce MD5 Sum v PL/SQL