Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Разделы и подразделы
 
 автор: chexov   (25.05.2011 в 05:21)   письмо автору
 
 

доброго времени суток

есть БД
CREATE TABLE IF NOT EXISTS `razdel` (
  `id` int(9) NOT NULL auto_increment,
  `names` varchar(255) NOT NULL,
  `position` int(3) NOT NULL,
  PRIMARY KEY  (`id`)
);
--
-- Дамп данных таблицы `razdel`
--
INSERT INTO `razdel` (`id`, `names`, `position`) VALUES
(1, 'Раздел1', 0),
(2, 'Раздел2', 1),
(3, 'Раздел3', 2);

CREATE TABLE IF NOT EXISTS `podrazdel` (
  `id` int(9) NOT NULL auto_increment,
  `id_razdel` int(9) NOT NULL,
  `names` varchar(255) NOT NULL,
  `position` int(3) NOT NULL,
  PRIMARY KEY  (`id`)
);
--
-- Дамп данных таблицы `podrazdel`
--
INSERT INTO `podrazdel` (`id`, `id_razdel`, `names`, `position`) VALUES
(1, 1, 'Подраздел1',0),
(2, 1, 'Подраздел2', 1),
(3, 2, 'Подраздел3', 2),
(4, 2, 'Подраздел4', 3),
(5, 3, 'Подраздел5', 4),
(6, 3, 'Подраздел6', 5);


Подскажите с запросом чтобы в итоге выводило Все разделы отсортированые по position (1,2,3) включая каждый подраздел также отсортированный по position (1,2,3)

Раздел1
-Подраздел1
-Подраздел2
Раздел2
-Подраздел3
-Подраздел4
Раздел3
-Подраздел5
-Подраздел6

  Ответить  
 
 автор: cheops   (25.05.2011 в 11:58)   письмо автору
 
   для: chexov   (25.05.2011 в 05:21)
 

Можно начать отталкиваться от следующего запроса
SELECT
  razdel.names AS razdel_name,
  podrazdel.id_razdel AS id_razdel,
  podrazdel.names AS names,
  podrazdel.position AS position
FROM
  podrazdel
LEFT JOIN
  razdel
ON
  razdel.id = podrazdel.id_razdel
ORDER BY
  razdel.id,
  podrazdel.position

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования