Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2016, 20:58   #1
Wandere
Новичок
Джуниор
 
Регистрация: 23.01.2016
Сообщений: 1
Восклицание Двойной запрос с выборкой

Доброго времени суток. Уже голову сломал, понимаю, что надо рыть через JOIN, но пока не получается. Суть в чём:

Есть две таблицы, products и categories, первым запросом я вытягиваю id_category из таблицы products (значений несколько, не одно), а дальше мне нужно по этим id_category выполнить выборку из таблицы categories, где id в таблице categories = id_category из полученного результата.

Каким образом это реализуется? Направьте на нужное русло, пожалуйста
Wandere вне форума Ответить с цитированием
Старый 24.01.2016, 00:04   #2
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Код:
SELECT cat.Name, prod.Name 
FROM Products prod
INNER JOIN Categories cat ON cat.ID = prod.ID_Category
WHERE prod.ID = MyProductToBeSearched
Выдаст список пар из продукта и его категории (пары продукт-категория будут указывать тот же продукт, т.е. как бы повторять продукт несколько раз, если у продукта несколько категорий)
Если надо чтобы одному продукту соответствовала строка из перечня категорий через запятую, то надо знать Вашу СУБД, т.к. от этого зависит работа с выборкой в переменную, требущуюся для такого запроса.

Если надо только список категорий некоего продукта, то достаточно убрать вывод имени проудкта (prod.Name)

Самочевидно, что Вашей структуры я не знаю и запрос написал как бы для подобной структуры, не удивляйтесь, если скопировав его один один, он у Вас не заработает.

Двойной запрос не вижу смысла тут городить, только если надо другую выборку (или её форму) по своей сути.

И да, почитайте книжицу то по SQL.

Последний раз редактировалось phomm; 24.01.2016 в 00:07.
phomm вне форума Ответить с цитированием
Старый 24.01.2016, 09:40   #3
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Вот полезная картинка как работают разные JOIN операции.
http://www.codeproject.com/KB/databa...JOINS_orig.jpg
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать двойной запрос saylar_06 SQL, базы данных 5 02.09.2014 16:57
Запрос с выборкой по одинаковым значением нескольких полей Ishtvan SQL, базы данных 4 10.01.2014 12:40
Запрос с выборкой Count SovereignSun SQL, базы данных 2 17.07.2012 11:56
Запрос с выборкой NIKOLASCS SQL, базы данных 11 02.04.2010 07:20
Как оптимизировать запрос MySQL с выборкой из двух таблиц. Johnatan SQL, базы данных 6 13.04.2008 03:10