Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak mogę pogrupować pole za pomocą mysql?

Jeśli chcesz po prostu połączyć kolory i pola obrazów:

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

Aby uzyskać wszystkie dane pionowo w jednej kolumnie i nadal zezwalać na porządkowanie według wspólnego identyfikatora, rozważ:

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;

Jeśli chcesz połączyć wiele wierszy danych w jeden ciąg, zapoznaj się z funkcją 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;

Nie można zmusić skrzypiec do pracy z Char(10) + Char(13) ani połączyć z + i nie mam MySQL do testowania, ale mam nadzieję, że to pozwoli Ci zacząć.

Następnie zamiast próbować zrobić to w ramach zapytania, istnieje możliwość utworzenia raportu, który będzie sortował i grupował dane v_ebt. Byłoby to proste w programie Access i spodziewam się, że mogą to zrobić narzędzia do raportowania MySQL i Crystal Reports.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak używać Relation::morphMap() dla różnych klas

  2. Jak wstawić fragment kodu php do bazy danych mysql?

  3. Nazwa kolumny dynamicznej w MYSQL

  4. Paginacja wyników MySQL w PHP

  5. Czy istnieje sposób na pobranie identyfikatora autoincrement z przygotowanej instrukcji?