Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / JOIN при выборке из трёх таблиц / 2 сообщений из 2, страница 1 из 1
20.10.2004, 19:25
    #32747283
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JOIN при выборке из трёх таблиц
Я использую базу для обработки форм, состоящих из произвольного количества селекторов, групп чекбоксов и инпутов и задал следующую структуру таблиц:
TABLE type_group (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
cat_id INT UNSIGNED NOT NULL, -- это суть идентификатор формы
input_type INT UNSIGNED NOT NULL,
name CHAR(100), -- название группы чекбоксов, селектора или инпута
delimiter TEXT -- разделитель между группами, для компоновки их на странице
);

TABLE type_value (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
group_id INT UNSIGNED NOT NULL,
name CHAR(100) -- название значения для селектора или группы чекбоксов(для инпута не определено)
);

TABLE type_item_values (
value_id INT UNSIGNED NOT NULL,
item_id INT UNSIGNED NOT NULL,
value CHAR(20),
PRIMARY KEY(value_id, item_id));

Проблема в том, что задумывалось, что выборка из базы будет возвращать
для каждого type_value.id соответствующее значение из type_item_values либо NULL, а у меня такая выборка не получается... Мб есть у кого идеи, как её добиться?
...
Рейтинг: 0 / 0
21.10.2004, 00:04
    #32747451
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JOIN при выборке из трёх таблиц
SELECT * FROM
type_value LEFT JOIN type_item_values
ON type_item_values.value_id=type_value.id
WHERE type_item_values.item_id=$item
OR type_item_values.item_id IS NULL

Выдаёт почти то, что нужно, но не совсем...
На пустой базе всё ок, но как только в таблице появляются записи для других item_id -- они исключаются из списка не заданных для этого item_id значений (соответствующие невыбранные (но выбираемые) элементы формы, естественно, пропадают)...
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / JOIN при выборке из трёх таблиц / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]