SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 08.08.2013 12:55:31

Slorvengo
Завсегдатай
Зарегистрирован: 08.08.2013
Сообщений: 46

Mysql-запрос на поиск ID-не существующего родителя в дереве

Добрый день.

В БД храниться обычно дерево - где ID-это уникальное значение записи, PELEM - это значение ключа-родителя.
Вопрос в следующем - можно ли как нибудь простым mysql-запросом получить список всех записей, у которых PELEM - ссылается на не существующее значение - что то вроде - не знаю насколько это по производительности:

SELECT * FROM mytable WHERE `pelem` NOT IN (SELECT `uid` FROM mytable)


Спасибо.

Отредактированно Slorvengo (08.08.2013 12:55:58)

Неактивен

 

#2 09.08.2013 17:45:49

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3878

Re: Mysql-запрос на поиск ID-не существующего родителя в дереве

Можно переписать через JOIN

SELECT * FROM mytable A LEFT JOIN mytable B ON A.pelem = B.uid WHERE B.uid IS NULL;

Неактивен

 

#3 13.08.2013 16:58:03

Slorvengo
Завсегдатай
Зарегистрирован: 08.08.2013
Сообщений: 46

Re: Mysql-запрос на поиск ID-не существующего родителя в дереве

Еще не удалось попробовать - но обязательно попробую и отпишусь...
Спасибо.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson