Объединить две таблицы SQL с условием - PullRequest
2 голосов
/ 19 июля 2011

Я начал изучать SQL сейчас и теперь мой вопрос: посмотрите на мое загруженное изображение и скажите мне, как я могу отфильтровать все категории продуктов с помощью id_product = 45, и мое возвращаемое значение составляет 45-3,45-2 и строка1 из групп продуктов.

Опять же: у меня будут ВСЕ строки product_groups (1,2,3) и связанная id_category (product_category) с id_product = 45.

Это нелегко объяснитьпростите за мой плохой английский ..

The two SQL Tables

Вот SQL-запрос, который выдает все строки с id из product_groups и id_product = 45, но НЕ id = 3 с пустыми значениями: - (

SELECT 
  id, title, multiplayer, id_product 
FROM 
  product_category 
RIGHT OUTER JOIN products_groups ON 
  rg_product_category.id_category = products_groups.id 
WHERE 
  product_category.id_product = '45' OR 
  product_category.id_product IS NULL AND products_groups.type = 'Game';

спасибо за помощь

1 Ответ

4 голосов
/ 19 июля 2011

Мне кажется, я понимаю, что вы хотите: вы хотите перечислить все группы товаров с нулевыми значениями, если они не совпадают. Попробуйте это:

SELECT 
  id, title, multiplayer, id_product 
FROM  products_groups
LEFT JOIN product_category
  ON product_category.id_category = products_groups.id 
  AND product_category.id_product = '45'
WHERE products_groups.type = 'Game';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...