sql >> Database >  >> RDS >> Mysql

Meerdere tabellen opvragen

Vraag:

SELECT A.recipe_name, GROUP_CONCAT(ingredient_name) AS ingredient_names
FROM recipes A
LEFT JOIN recipe_ingredients B ON A.id = B.recipe_id
LEFT JOIN ingredients C ON B.ingredient_id = C.iid
LEFT JOIN recipe_categories D ON A.id = D.recipe_id
LEFT JOIN categories E ON D.category_id = E.cid
WHERE category_id = <serach_id>
GROUP BY id

Resultaat:

+-------------------+-------------------------------------------------+
| recipe_name       | ingredient_names                                |
+-------------------+-------------------------------------------------+
| black forest cake | chocolate,baking powder,self-raising flour,milk |
| angel cake        | self-raising flour,milk,chocolate               |
| melting moments   | milk,plain flour                                |
| croquembouche     | self-raising flour,plain flour                  |
| crepes suzette    | milk                                            |
+-------------------+-------------------------------------------------+

Hier is waar je om hebt gevraagd met behulp van de GROUP_CONCAT. Elk ingrediënt wordt gescheiden door ,



  1. SQL Gegevens uit meerdere tabellen in verschillende databases invoegen

  2. Tijdstempels ontleden - doe het in MySQL of in PHP?

  3. Spark SQL en MySQL- SaveMode.Overwrite voegt geen gewijzigde gegevens toe

  4. PostgreSQL FOUT:42P01:relatie [Tabel] bestaat niet