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

Jak se vypořádat s více autory vrácenými z dotazu tabulky knih

Možná byste měli zvážit použití GROUP_CONCAT() takhle:

SELECT
  b.id,
  b.title,
  GROUP_CONCAT(CONCAT(a.fname,' ' , a.lname)) AS author_names,
  GROUP_CONCAT(a.id) as author_ids
FROM books b
LEFT JOIN author_book ab
  ON b.id = ab.book_id
LEFT JOIN authors a
  ON ab.author_id = a.id
WHERE b.id = '406'
GROUP BY b.id

To by vám dalo výstup jako:

406 | The world of the wheel of time | Robert Jordan,Teresa Patterson     | 2,3



  1. Jak zajistit, aby sloupec zobrazení NENÍ NULL

  2. PostgreSQL/JDBC a TIMESTAMP vs. TIMESTAMPTZ

  3. Kardinalita indexu tabulky MySQL

  4. Důvody pro upgrade na SQL Server 2017