Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> составление сложного запроса 
:(
    Опции темы
WickedMan
Дата 4.2.2008, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 12.12.2007

Репутация: нет
Всего: нет



всем день добрый!
проблема такая: из таблицы inv_stat_col надо выбрать столбeц item_eng, где id_parent=4,
из таблицы inv_stat_str выбрать столбец item_eng, где id_parent=109,
и из таблицы inv_stat выбрать столбики f6, f7, f24, f34, где id_str= от 1 до 17
можно ли реализовать все это в одном запросе?
причем значение каждой надо вывести в отдельную ячейку.
я кое-что сам попробовал...
Код

"SELECT inv_stat_str.item_eng, inv_stat_col.item_eng FROM inv_stat_str, inv_stat_col where inv_stat_str.id_parent=4, inv_stat_col.id_parent=109"
"SELECT f6,f7,f24,f34 FROM inv_stat WHERE id_str=1..17"

но к сожалению синтаксис обоих запросов неправильный
PM MAIL   Вверх
igorold
Дата 5.2.2008, 09:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: 5
Всего: 17



ну для начала - в выражениях WHERE запятые не применяются ... в твоем случае надо написать AND

и конструкцию  id_str=1..17 - не встречал. Напиши id_str>=1 and id_str<=17

Это сообщение отредактировал(а) igorold - 5.2.2008, 09:28


--------------------
... у семи нянек 14 сисек ...  
Putin here, Putin there, Putin almost everywhere!
PM MAIL   Вверх
WickedMan
Дата 5.2.2008, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 12.12.2007

Репутация: нет
Всего: нет



как вы оцените такой вариант запроса?
Код

SELECT A.item_eng AS ITEM1, B.item_eng AS ITEM2, C.f6 AS ITEM3, C.f7 AS ITEM4, C.f24 AS ITEM5, C.f34 AS ITEM6 FROM inv_stat_col AS A, inv_stat_str AS B, inv_stat AS C WHERE A.id_parent=4 OR B.id_parent=109 OR (C.id_str>=1 AND C.id_str<=17)

PM MAIL   Вверх
Akina
Дата 5.2.2008, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 106
Всего: 454



Цитата(WickedMan @  5.2.2008,  11:16 Найти цитируемый пост)
как вы оцените такой вариант запроса?

как неправильный

Код

SELECT A.item_eng AS ITEM1, 
       B.item_eng AS ITEM2, 
       C.f6 AS ITEM3, 
       C.f7 AS ITEM4, 
       C.f24 AS ITEM5, 
       C.f34 AS ITEM6 
FROM   inv_stat_col AS A, 
       inv_stat_str AS B, 
       inv_stat AS C 
WHERE  A.id_parent=4 
   AND B.id_parent=109 
   AND C.id_str BETWEEN 1 AND 17

и то при условии что условию по каждой из таблиц установленному для этой таблицы условию соответствует только одна строка


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
igorold
Дата 5.2.2008, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: 5
Всего: 17



в конструкции FROM надо писать без AS
а вообще я не пойму смысл твоего запроса, если записи в таблицах между собой логически не связаны (не привязаны) ... 


--------------------
... у семи нянек 14 сисек ...  
Putin here, Putin there, Putin almost everywhere!
PM MAIL   Вверх
WickedMan
Дата 5.2.2008, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 12.12.2007

Репутация: нет
Всего: нет



то есть Вы считаете что проще будет создать несколько простых запросов?

PM MAIL   Вверх
igorold
Дата 5.2.2008, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: 5
Всего: 17



Цитата(WickedMan @  5.2.2008,  10:43 Найти цитируемый пост)
то есть Вы считаете что проще будет создать несколько простых запросов?


а ты думаешь, понятно, чего тебе нужно?


--------------------
... у семи нянек 14 сисек ...  
Putin here, Putin there, Putin almost everywhere!
PM MAIL   Вверх
Akina
Дата 5.2.2008, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 106
Всего: 454



Цитата(igorold @  5.2.2008,  11:27 Найти цитируемый пост)
в конструкции FROM надо писать без AS

Да-а-а? Можно - не значит нужно... более того, где можно использовать стандартный синтаксис, следует предпочитать его локальному.

Цитата(WickedMan @  5.2.2008,  11:43 Найти цитируемый пост)
то есть Вы считаете что проще будет создать несколько простых запросов?

Очень часто задачу надо решать не так, как маленький ее кусочек.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
igorold
Дата 6.2.2008, 06:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: 5
Всего: 17



Цитата(Akina @  5.2.2008,  15:07 Найти цитируемый пост)
Да-а-а? Можно - не значит нужно... более того, где можно использовать стандартный синтаксис, следует предпочитать его локальному.


пардон ... конечно можно писать с AS ... я просто привык не писать ... вот и даю неправильные рекомендации ...  smile  smile 


--------------------
... у семи нянек 14 сисек ...  
Putin here, Putin there, Putin almost everywhere!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0493 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.