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




MySQL.RU - Webboard



Вернуться
Что-то не то с запросом... (loto) 02/08/2004 - 15:48:59
      Re: Что-то не то с запросом... (Роберт) 02/08/2004 - 16:08:06
      Re: нифига... (loto) 02/08/2004 - 16:20:06
      Re: Всё работает. (Роберт) 02/08/2004 - 16:38:29
      Re: Всё работает. (loto) 02/08/2004 - 17:14:27
      Re: Всё работает. Перепроверил! (Роберт) 02/08/2004 - 17:24:52
      Re: не-а...:) (loto) 02/08/2004 - 17:32:38
      Re: не-а...:) (Роберт) 02/08/2004 - 17:46:19
      Re: не-а...:) (loto) 02/08/2004 - 17:50:07
      Re: все! (loto) 02/08/2004 - 17:53:45
      Re: Разумеется! (Роберт) 02/08/2004 - 18:11:18

> Original message text:
> From: loto - 02/08/2004 - 15:48:59
> Subject:Что-то не то с запросом...
> -----------------
> Народ, кому не лень подскажите с запросом. Я знаю, что он не правильный, а как сделать его верным ... :(
>
> Идея такая. Есть записи(rid) которые принадлежат какой-то отдельной категории(cid), у каждой категории есть критерии (fid), у каждой записи есть соотвественно эти критерии, и для каждой записи есть свои значения (vid)
>
>
> Есть три таблицы
> =`base_records`
> `rid` id записи
> `uid` id пользователя добавишего запись
> `cid` id категории которой принаджелжит запись
> `type` enum('подтвержденная', 'не подтвержденная')
>
> =`base_fields`
> `fid` id поля(критерия)
> `cid` id категории
> `caption` название критерия
> `type` enum тип, текстовое поле, область текста, select
> `view` enum видно только админу, не видно пользователю
> `search` можно искать по этому полю
> `def_value` значение по умолчанию, или набор значений для select
> `pos` порядковый номер
>
> =`base_values`
> `vid` id значения
> `rid` id записи
> `fid` id критерия
> `value` значение.
>
> НУЖНО. выбрать все записи для категории cid=1(например) одним запросом, желательно. На выходе нужно
>
> `r`.`rid`,
> `f`.`fid`,
> `v`.`vid`,
> `f`.`caption`,
> `f`.`type`,
> `f`.`view`,
> `f`.`search`,
> `f`.`def_value`,
> `v`.`value`
>
> Делаю так, но это не правильно :\ Дубликаты одни.
>
> SELECT
> `r`.`rid`,
> `f`.`fid`,
> `v`.`vid`,
> `f`.`caption`,
> `f`.`type`,
> `f`.`view`,
> `f`.`search`,
> `f`.`def_value`,
> `v`.`value`
> FROM
> `base_records` AS `r`,
> `base_fields` AS `f`,
> `base_values` AS `v`
> WHERE
> `r`.`cid` = 1 AND
> `f`.`cid` = `r`.`cid` AND
> `v`.`fid` = `f`.`fid`
> GROUP BY
> `v`.`vid`,
> `r`.`rid`,
> `f`.`fid`
> ORDER BY
> `r`.`rid`,
> `f`.`pos`
>
> :( может кто подскажет, пиво с меня легко. Замучался уже...
>


From: Роберт - 02/08/2004 - 17:24:52
Subject:Всё работает. Перепроверил!
-----------------
Неправда! Данные у тебя разные , а два раза они потому что в таблице R у тебя 2 строки , поставь 3 , и тебе будет казаться что они по три раза идут (ведь и для rid=4 есть Ухта и для rid=5 есть Ухта)
Короче - покажи мне 2 одинаковых записи и с меня будет 10 литров колы! :)


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

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

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



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