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




MySQL.RU - Webboard



Вернуться
Сложный запрос... (NetHead) 01/03/2004 - 15:51:18
      Re: Сложный запрос... (Krot) 01/03/2004 - 16:51:38
      Re: Re: Насколько я понял... (NetHead) 01/03/2004 - 18:04:52
      Re: Re: Насколько я понял... (Krot) 02/03/2004 - 09:35:11
      Re: Re: Насколько я понял... (Krot) 02/03/2004 - 09:47:28
      Re: Re: Вариант (Lev) 02/03/2004 - 11:40:20

> Original message text:
> From: NetHead - 01/03/2004 - 15:51:18
> Subject:Сложный запрос...
> -----------------
> Нужно из базы выбрать данные. Мне в голову приходит алгоритм в несколько запросов (слишком громоздко). Может кто придумает по-проще?
>
> Задача:
> SELECT id,x,price FROM maintable WHERE z=4
> id-ключ
> В этом запросе нужно вывести еще несколько полей, которые хранятся в таблицах с именами вида "table-x", где "x" и есть выбираемое значение.
>


From: Lev - 02/03/2004 - 11:40:20
Subject:Re: Вариант
-----------------
Если в "базовой" таблице выбирается гарантированно одна запись (т.е. одно значение "х") то можно :
1. первым запросом выбрать значение "х"
2. в клиенте сгенерить динамически текст сложного запроса, используя значение "х"
3. послать сгенеренный запрос серверу и получить нужный рекордсет..

А если из основной таблицы выбирается несколько записей... и несколько "х" - то надо обращаться к РАЗНЫМ таблицам, тогда можно:
1. Создать рекордсет со значениями "х"
2. перебрать записи и для каждой сформировать сложный запрос и выполнить этот запрос с сохранением записей во временной таблице
3. а потом получить рекордсет из этой таблицы.
Или еще можно вместо временной таблицы использовать UNION - с какой-то там версии он вроде работает... (сам с ним в MySQL не юзался)

Флаг в руки и дерзайте!


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

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

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



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