Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
связь трех таблиц (rumos) 26/02/2007 - 16:46:00



From: rumos - 26/02/2007 - 16:46:00
Subject:связь трех таблиц
-----------------
Здравствуй, уважаемый ALL. Чего-то я в работе дистинкта не понимаю наверное...
1)
SELECT
DISTINCT(t.themeid),
f.forumid, f.title
FROM forum_messages AS m
INNER JOIN forum_themes AS t ON t.themeid=m.themeid
INNER JOIN forum AS f ON f.forumid=t.forumid AND (f.logins IS NULL or f.logins='')
ORDER BY m.msgid DESC LIMIT 5
------
353 22 Ищу работу
352 22 Ищу работу
351 22 Ищу работу
350 13 Снаряжение и экипировка
349 14 Анонсы, события, мероприятия
---
2)
SELECT
t.themeid,
f.forumid, f.title
FROM forum_messages AS m
INNER JOIN forum_themes AS t ON t.themeid=m.themeid
INNER JOIN forum AS f ON f.forumid=t.forumid AND (f.logins IS NULL or f.logins='')
ORDER BY m.msgid DESC LIMIT 5
-------------
272 3 Кино
353 22 Ищу работу
352 22 Ищу работу
272 3 Кино
351 22 Ищу работу

-суть вопроса - не могу понять почему в первом случае грепается themeid==272 - ведь дистинкт означает лишь уникальную выборку, а не исключение повторяющихся элементов из запроса полностью..
или я не прав ?
MySQL 5.1.12-beta, FreeBSD 7-ая.

Спасибо за ответы.
С уважением.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
30838



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |