Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » тройной select

Ответить
Настройки темы
тройной select

Аватара для E-mail

Ветеран


Сообщения: 640
Благодарности: 2

Профиль | Сайт | Отправить PM | Цитировать


есть три таблицы:

====
user:
====
id (unique)
name

====
guest
====
id (unique)
name

======
message
======
user_id
guest_id
for_user_id
for_guest_id
message
private
time_send



в каждом кортеже message может быть либо for_user_id отличный от нуля либо for_guest_id, оба быть не нулями(0) не могут, но могут оба быть нулями.
далее мне надо получать сразу имя пользователя кому сообщение: связываюсь с таблицами user и guest

запрашиваю все кортежи где guest_id == 1

SELECT
user.name,
guest.name,
message.message,
message.private,
message.time_send
FROM
message,
user,
guest
WHERE
message.guest_id = '1' AND
user.id = message.for_user_id AND
guest.id = message.for_guest_id

не работает..
в чем ошибка?

-------
Основы HTML | Конференции


Отправлено: 14:11, 08-04-2006

 

Аватара для E-mail

Ветеран


Сообщения: 640
Благодарности: 2

Профиль | Сайт | Отправить PM | Цитировать


ну мы уже ведь разделил таблице message на:

=======
preferens:
=======
id (unique)
user_id
guest_id
for_user_id
for_guest_id
message_id

и

=======
message:
=======
id (unique)
message
private
time_send


т.е. по сути у нас теперь четыри таблицы и требуется четЫрной селект

MySQL версии 4+
если надо могу посмотреть более точно версию

ай, памажите с запросом..

-------
Основы HTML | Конференции


Отправлено: 20:07, 09-04-2006 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

Underson


Сообщения: n/a

Профиль | Цитировать


слушай а чисто тупо не может быть что у тебя одинаковые поля получиутся... ведь user.name, guest.name, в итоге все равно получаються что там что там name если сделать user.name as user_name и guest.name as guest_name просто я вот например чато практикую запрос к 3 и боле тблицам.. (знаю что это не совсем логично но просто так привык) и как то ни каких особенно проблем не возникало...

Отправлено: 11:47, 10-04-2006 | #12


Аватара для E-mail

Ветеран


Сообщения: 640
Благодарности: 2

Профиль | Сайт | Отправить PM | Цитировать


Prisoner то условие ради которого разделили таблицу мессаж от связей называется на самом деле второй, а не третьей нормальной формой

проблему на самом деле решил.. как всегда сам, двумя способами.. уж незнаю радоваться мне от этого или нет, незнаю.

сам по себе пример содержал в себе несоблюдение условия третьей нормальной формы, а об этом никто не сказал...

всем спасибо

-------
Основы HTML | Конференции


Отправлено: 23:09, 10-04-2006 | #13



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » тройной select

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] элемент select с цифрами dima1981 Вебмастеру 2 11-11-2008 16:34
Динамический Select darksmoke Вебмастеру 1 06-04-2008 22:15
Select с HTML кодом vadimiron Вебмастеру 10 19-02-2007 11:34
Тег <Select> Scorpion666 Вебмастеру 12 25-12-2006 21:46
Вложенный SELECT в MySQL LEXX2002 Вебмастеру 7 06-09-2005 00:07




 
Переход