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




MySQL.RU - Webboard



Вернуться
помогиет составить запрос (Виктор) 18/02/2009 - 15:28:52
      Re: помогиет составить запрос (pavel) 20/02/2009 - 11:53:40
      Re: помогиет составить запрос (Виктор) 23/02/2009 - 12:20:28
      Re: помогиет составить запрос (SAS) 24/02/2009 - 13:45:29
      Re: помогиет составить запрос (SAS) 24/02/2009 - 14:00:30
      Re: помогиет составить запрос (pavel) 02/03/2009 - 19:32:15

> Original message text:
> From: Виктор - 18/02/2009 - 15:28:52
> Subject:помогиет составить запрос
> -----------------
> Возник вот такой вопрос
>
> есть таблицы
> Object (ID, Name)
> Type (ID, Value)
> ObjectType (ID, ObjectID, TypeID)
>
> Соответственно в таблице Object хранится список объектов, в таблице Type типы объектов. Ну а в
>
> ObjectType храняться связки типов и объектов. Ну и соответственно таких связок может быть
>
> несколько, например тип строительства и тп.
>
> Возникла необходимость поиска по этим таблицам, но написать запрос что-то не получается,
>
> подскажите пожалуйста как составить запрос для поиска с типом?
> Ну или подскажите как хранить данные по другому, чтобы у объектов могло быть не ограниченное количество типов.
>


From: pavel - 20/02/2009 - 11:53:40
Subject:помогиет составить запрос
-----------------
"Поиска с типом" - уточните что нужно. Если нужно выбрать все объекты с указанным типом, то запрос будет такой

SELECT *
FROM `Object`, `Type`, `ObjectType`
WHERE (
`Object`.`ID` = `ObjectType`.`ObjectID`
AND `Type`.`ID` = `ObjectType`.`TypeID`
AND `Type`.`ID` = ТРЕБУЕМОЕ_ЗНАЧЕНИЕ_ТИПА
)

Для поиска по множеству типов:
SELECT *
FROM `Object`, `Type`, `ObjectType`
WHERE (
`Object`.`ID` = `ObjectType`.`ObjectID`
AND `Type`.`ID` = `ObjectType`.`TypeID`
AND `Type`.`ID` IN (ТРЕБУЕМОЕ_ЗНАЧЕНИЕ_ТИПА1, ТРЕБУЕМОЕ_ЗНАЧЕНИЕ_ТИПА2, ..., ТРЕБУЕМОЕ_ЗНАЧЕНИЕ_ТИПАN)
)

По поводу структуры: В таблице ObjectType нет необходимости в боле ID, т.к. индексировать по нему бессмысленно и никакой нагрузки оно не несет.


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

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

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



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