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

vyberte více řádků v jednom řádku výsledku

Můžete použít GROUP_CONCAT() a GROUP BY k dosažení požadovaných výsledků:

SELECT t1.*, GROUP_CONCAT(t2.date) AS dates
FROM Table1 t1
LEFT JOIN Table2 t2
  ON t2.ID_adv = t1.ID_adv
GROUP BY t1.ID_adv

Tím se vrátí všechna data pro každou reklamu, zřetězená čárkami. Pokud v tabulce 2 pro konkrétní reklamu nejsou žádná data, dostanete ve sloupci data hodnotu NULL.

Chcete-li cílit na konkrétní reklamu, jednoduše přidejte WHERE klauzule:

SELECT t1.*, GROUP_CONCAT(t2.date) AS dates
FROM Table1 t1
LEFT JOIN Table2 t2
  ON t2.ID_adv = t1.ID_adv
WHERE t1.ID_adv = 3
GROUP BY t1.ID_adv


  1. Chyba Postgres SSL SYSCALL:EOF detekován pomocí pythonu a psycopg

  2. Který z nich je rychlejší a lehčí – mysqli &PDO

  3. Test výkonu MS SQL Server na Linuxu vs Windows, abyste zjistili rozdíl

  4. Migrace dat pomocí Network_link