Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.11.2011, 21:19   #1
Lotles
Пользователь
 
Регистрация: 02.10.2010
Сообщений: 86
По умолчанию Как SQL выполняет запрос

В каком порядке SQL выполняет запрос?
Код:
SELECT *
FROM(
           SELECT Имя, (
                    SELECT Sum(Цена*Количество)
                    FROM Order_Details
                    WHERE OrderID IN (
                                                     SELECT OrderID
                                                     FROM Orders
                                                     WHERE CustomersID=Customers.CustomersID
                                                     ) 
                     ) AS TotalSum
           FROM CUSTOMERS
           )MyTable
WHERE TotalSum > 5000;
Lotles вне форума Ответить с цитированием
Старый 05.11.2011, 21:28   #2
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Почитайте тут
http://www.sql-ex.ru/help/select4.php#select_enum

Последний раз редактировалось vovk; 05.11.2011 в 22:04.
vovk вне форума Ответить с цитированием
Старый 05.11.2011, 21:33   #3
Lotles
Пользователь
 
Регистрация: 02.10.2010
Сообщений: 86
По умолчанию

vovk Остроумно
Какая логика у него
Тебе похоже смешно
Тогда, скажи раз такой умный, почему здесь ошибка
Код:
SELECT Имя, (
                    SELECT Sum(Цена*Количество)
                    FROM Order_Details
                    WHERE OrderID IN (
                                                     SELECT OrderID
                                                     FROM Orders
                                                     WHERE CustomersID=Customers.CustomersID
                                                     ) 
                     ) AS TotalSum
FROM CUSTOMERS
WHERE TotalSum > 5000

Последний раз редактировалось Lotles; 05.11.2011 в 21:36.
Lotles вне форума Ответить с цитированием
Старый 05.11.2011, 21:37   #4
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Извините ссылку вверху переправил, смеятся не хотел, просто ошибся, не от туда видимо ссылку скопировал.

ЗЫ В запрос не вникал, у нас почти 3 ночи, голова не очень соображает, если вопросы к утру останутся попробую разобратся...
ЗЫ ЗЫ И пожулуйста на вы, по крайней мере пока

ЗЫ ЗЫ ЗЫ И полезно было бы указать СУБД, от этого бывает много зависит

Последний раз редактировалось vovk; 05.11.2011 в 21:46.
vovk вне форума Ответить с цитированием
Старый 05.11.2011, 21:52   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Тогда, скажи раз такой умный, почему здесь ошибка
Ты тоже себя умным считаешь?
И ты в придачу телепат? Для тебя слово "ошибка" однозначно объясняет философию мира?

P.S. Разве нельзя через JOIN запрос построить?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.11.2011, 21:54   #6
Lotles
Пользователь
 
Регистрация: 02.10.2010
Сообщений: 86
По умолчанию



Давайте не будем выяснять отношения,
можно через join-ы, я правда до них не дошел еще, но нужно знать разные способы построения запросов и нужно знать, как вообще SQL выполняет запросы(логика выполнения)

Последний раз редактировалось Stilet; 06.11.2011 в 00:51.
Lotles вне форума Ответить с цитированием
Старый 06.11.2011, 00:52   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
нужно знать, как вообще SQL выполняет
Explain Plan тебе в помошь. выясняй как в Акцессе его посмотреть
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как рассчитать возраст sql запрос slai БД в Delphi 5 28.09.2010 11:02
sql запрос - как упростить forzi БД в Delphi 7 06.04.2010 11:57
Подскажите как поправить SQL запрос МишаК SQL, базы данных 3 16.07.2009 16:22
Как выполнить SQL запрос, записанный в Memo artemavd БД в Delphi 8 26.03.2009 17:41
как составит запрос SQL bmb_66 БД в Delphi 2 11.03.2008 08:46