languages
------------
| id | name |
------------
| 1 | Polski |
| 2 | English|
| 3 |Deutsch|
-------------
shipping_names
|-------------------------------------|
| id | shipping_id | name | language_id |
---------------------------------------
| 1 | 1 | bla | 1 |
| 2 | 1 | wlw | 2 |
| 3 | 2 | agag | 3 |
---------------------------------------
Chcę utworzyć zapytanie, które zawsze zwróci tyle wierszy ile ma tabela languages w zależności od shipping_id w tabeli shipping_names. Czyli przykładowo dla shipping_id=1 potrzebuję to:
|--------------------------------------------|
| id | name | shipping_id | name | language_id |
----------------------------------------------
| 1 | Polski | 1 | bla | 1 |
| 2 | English| 1 | wlw | 2 |
| 3 |Deutsch| null | null | null |
-----------------------------------------------
Próbowałem z zapytaniem w stylu:
Kod: Zaznacz cały
SELECT l.id AS lid, l.name AS lname, s.* FROM languages l LEFT JOIN shipping_names s ON l.id=s.language_id WHERE s.shipping_id IS NULL OR s.shipping_id=1
Proszę o pomoc w odpowiednim sformułowaniu zapytania

pozdrawiam!