products
kolumny:
products_id | products_kod
1 xxxxx
2 yyyyyy
3 zzzzzz
....
products_description
kolumny:
products_id | gen | products_description
1 2 xxxxxxxx
2 NULL yyyyyyyy
1 7 xxxxxzzzz
3 2 xxxxxxyyy
...
categories_to_gen
kolumny:
categories_id | gen
1000 1
1002 2
1005 7
....
products_to_categories
products_id | categories_id
1 1000
2 1003
3 1002
....
chodzi o listing wszystkich opisów i kodów produktów dla zadanej kategorii, np 1002,
zapytanie nr 1:
SELECT p.products_kod, pd.products_description FROM products p, products_description pd, products_to_categories p2c WHERE p.products_id = pd.products_id AND p.products_id = p2c.products_id AND p2c.categories_id = '1002'
sprawa banalna.
Jenak chcę dodać do pytania tabelę categories_to_gen bo wyniki wyszukiwania w products_description mogą dawać różne rezultaty products_description dla takich samych products_id i różnych gen (np: products_id = 1 w tabeli products_description)
I tu jest problem, bo proste włączenie do zapytania, tabeli categories_to_gen:
zapytanie nr 2:
SELECT p.products_kod, pd.products_description FROM products p, products_description pd, products_to categories p2c, categories_to_gen c2g WHERE p.products_id = pd.products_id AND p.products_id = p2c.products_id AND pd.gen = c2g.gen AND c2g.categories_id = p2c.categories_id AND p2c.categories_id = '1002'
będzie wykluczało z wyników te rekordy, dla których gen = NULL w tabeli products_description, a ja chciałbym aby w przypadku nie zefiniowanego gen, takie rekordy były wyświetlane pomimo braku powiązania pd.gen = c2g.gen w tabeli categories_to_gen.
Pytanie - czy jest jakiś sposób na listing rekorów spełniających warunek z zapytania nr 2 ale bez wykluczenia rekordów z gen = NULL w tabeli products_description ?