[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Пустые ссылки
roland_07
Возникла такая проблема: есть список разделов в каждом из которых свои подразделы, но в некоторых разделах нет информации (пустой раздел), так вот как сделать так чтобы при выводе списка разделов - одни были с ссылками, другие - без (не активные).
Структура такая: главная таблица, таб. разделов, таб. подразделов
связь главной с другими через id разделов, подразделов
Подскажите как это можно реализовать



Спустя 11 часов, 58 минут, 35 секунд (25.11.2009 - 12:02) silicid написал(а):
Насколько я понял из задачи, то решение примерно такое
Запрос на извлечение, где поле CNT будет выводить количество строк в разделе

SELECT *,count(p.id) as cnt
FROM r
LEFT JOIN g ON r.id = g.id
LEFT JOIN p ON g.id2 = p.id AND p.active = 'Y'
WHERE r.active = 'Y'
GROUP BY r.id
;


Таблицы

//таблица связий разделов и подразделов, соответственно айдишники ихнии
CREATE TABLE `g` (
`Id` int(11) NOT NULL,
`id2` int(11) default NULL
);

//таблица подразделов, АКТИВЕ служит вывода только активных подразделов, неактивные в счет не идут
CREATE TABLE `p` (
`Id` int(11) NOT NULL auto_increment,
`cc` varchar(255) default NULL,
`ACTIVE` varchar(1) default NULL,
PRIMARY KEY (`Id`)
);

//таблица разделов, АКТИВЕ служит вывода только активных разделов, неактивные в счет не идут
CREATE TABLE `r` (
`Id` int(11) NOT NULL auto_increment,
`xx` varchar(255) default NULL,
`ACTIVE` varchar(1) default NULL,
PRIMARY KEY (`Id`)
);


Дальше просто в коде выполняешь скл запрос приведенный, выше и определяешь по количеству подразделов, выводить ссылки или нет
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.