В моей таблице продуктов есть два столбца: категория1 и категория2. В моей таблице категорий у меня есть четыре разных категории, если продукт попадает под эту категорию, номер категории попадает под столбец category1, если он попадает под другую категорию одновременно, эта категория вводится в столбец category2, продукт делает не подпадают под более двух типов категорий одновременно.
Вот пример:
productID | category1 | category2
1 | 1 |
2 | 1 | 2
3 | 2 |
Таким образом, тип категории 1 всегда будет находиться в столбце категории 1, и если один и тот же продукт относится к типу категории 1 и 2, как показано выше в идентификаторе продукта 2, то это вызывает проблемы при запросе всех продуктов, относящихся к типу категории 2. .
Вот мой первый запрос, в котором я хочу получить все продукты, относящиеся к типу категории 1:
SELECT * FROM products WHERE category1 = 1
Мой второй запрос, в котором я хочу получить все продукты, относящиеся к типу категории 2:
SELECT * FROM products WHERE category1 = 2 AND OR category2 = 2
Я знаю, что второй запрос неправильный, я просто написал его, так как мне нужно, чтобы он работал.
Я не могу понять, как запросить два столбца одним запросом, только написав два отдельных запроса, любые предложения приветствуются. Я использую SQL Server 2008, поэтому специальные функции SQL могут не поддерживаться.