Автор Тема: Запрос (вложенный SELECT?)  (Прочитано 2648 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
Запрос (вложенный SELECT?)
« : 17 Октября 2005, 09:34:57 »
Есть таблица:
id || pid || value
1 || 1 || A
2 || 2 || B
12 || 2 || C
13 || 2 || D
14 || 1 || X
...
35 || 12 || Y
36 || 13 || Z
Смысл: `id`=`pid` - один тип объекта (тип А). Те объекты, у которых `pid` ссылается на тип А, - другой тип (В). Есть еще третий тип - те объекты, `pid` которых ссылается на тип В (назовем тип С).
Задача: Выбрать все объекты класса В. То есть, у которых `pid` ссылается на тип А.
В голову ничего не приходит.

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
Запрос (вложенный SELECT?)
« Ответ #1 : 17 Октября 2005, 10:10:22 »
Сорри, все сам решил. Вложенные запросы :)
Для типа С:
SELECT * FROM `obj_districts` WHERE `pid` IN (SELECT `id` FROM `obj_districts` WHERE `id`<>`pid` AND `pid` IN (SELECT `id` FROM `obj_districts` WHERE `id`=`pid`))

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28