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




MySQL.RU - Webboard



Вернуться
Помогите решить проблему с написанием SQLкода (Sergei) 07/04/2003 - 17:15:37
      Re: Помогите решить проблему с написанием SQLкода (Валентин) 07/04/2003 - 18:46:22

> Original message text:
> From: Sergei - 07/04/2003 - 17:15:37
> Subject:Помогите решить проблему с написанием SQLкода
> -----------------
> SELECT t3.Code, t3.ItemName
> FROM `cars` as t1, `carskeytocode` as t2, `all_items` as t3
> WHERE t1.marka='MITSUBISHI' and t3.groupid='ФИЛЬТРА' and t1.CarsKey=t2.CarsKey and t2.Code=t3.Code
> GROUP BY t3.Code
>
> После выполнения этого кода получаю таблицу с двумя колонками Code, ItemName. У меня также есть еще одна таблица `price` в которой две колонки Code и Price. Вопрос в следующем, как мне получить результирующую таблицу в виде Code, ItemName, Price???
>
> Вариант типа
> SELECT t3.Code, t3.ItemName, t3.Notes, MAX(t4.price)
> FROM `cars` as t1, `carskeytocode` as t2, `all_items` as t3, `price` as t4
> WHERE t1.marka='MITSUBISHI' and t3.groupid='ФИЛЬТРА' and t1.CarsKey=t2.CarsKey and t2.Code=t3.Code and t4.Code=t3.Code
> GROUP BY t3.Code
> непроходит :( сильно подвисает компутер (20 минут подождал и нажал на reset).
> Помогите с этим кодом.
> ps. Живу по MySQL 4.0
> pss. Вложенные запросы, к сожалению, неработают...
>
>
>


From: Валентин - 07/04/2003 - 18:46:22
Subject:Помогите решить проблему с написанием SQLкода
-----------------
В первом случе группировать небыло надобности.
Во втором случае группировать надо по всем полям, кроме
max(t4.price).
и еще странно, у тебя что во всех таблицах сквозное поле code ???
Где оно prymary key ????
кроме того лучше условия на это поле писать с той таблицей, которая здесь является справочником, по всей видимости t1, хотя насколько я вижу, t3 является линковочным полем для всех таблиц. А в t1 нету поля code???
Странно как-то спроектированы таблицы.
Вообще, если t1 - справочник, то все линковать надо по его primary key с primary key других от него зависящих справочников и учетных таблиц.
Тогда с запросами не будет такой проблеммы. Кроме того поля вероятнее всего не индексированы, чем и обусловлено долгое выполнение, если не считать косой проектировки таблиц.


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

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

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



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