Все элементы, родитель которых - корневой

147
15 декабря 2016, 15:53

Есть таблица с такой структурой:

gid    // id
name   // название
parent // родитель, ссылается на gid, если 0 - то корневой элемент

Мне необходимо, найти все дочерние элементы у корневого элемента.

Написал вот такой запрос:

SELECT * FROM `group` WHERE parent IN (SELECT gid FROM `group` WHERE parent = 0)

Нутром чую, что запрос не оптимальный, т.к. подозреваю что встроенный SELECT будет выполнятся для каждого gid-а.

Какой есть более оптимальный вариант поиска?

Answer 1
  SELECT g1.* FROM `group` AS g1
  JOIN `group` AS g2 ON g1.parent=g2.gid AND g2.parent=0
READ ALSO
Php запись из БД в xml

Php запись из БД в xml

У меня есть база данных с картинками и текстом, как сделать так чтобы все данные из базы записались в xml файл, с помощью php скрипта может быть?...

153
Сравнение данных их двух таблиц и занесение данных в третью

Сравнение данных их двух таблиц и занесение данных в третью

Доброй ночи! Проблема такаяЕсть две таблицы в БД - в одной "ответы студента на тест", в другой "ключи к тесту"

133
Обновление таблицы MySQL

Обновление таблицы MySQL

Например существует таблица в БД:

174