Тема: ADOQuery.SQL.Text
Показать сообщение отдельно
  #10  
Старый 16.11.2013, 14:43
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от govorun
Я писал в ADOQuery в String list editor вот это:
SELECT
(SELECT SUM(Поле2) FROM Таблица WHERE Поле1 = 100),
(SELECT SUM(Поле2) FROM Таблица WHERE Поле1 = 200),
(SELECT SUM(Поле2) FROM Таблица WHERE Поле1 = 300)

и получал ошибку вроде "нет входной таблицы" или синтаксис или еще чего...
Идея мне очень понравилась, но реализовать ее цивилизованным способом я не смог. (ТЕМА ДЛЯ НАЧИНАЮЩИХ). Как говорится если не можеш перелезть через забор попробуй его обойди или сделай подкоп
Может я не то и не туда писал?
Этот запрос я проверял на MS SQL Server'е - он нормально работал. Сейчас попробовал в Access'е - не работает.
M.A.D.M.A.N. оказался прав - Access зачем-то требует явного указания какой-либо "левой" таблицы для этого запроса, да ещё и выводит одинаковых записей в количестве равном как у этой "левой" таблицы.
Вобщем вот так должно работать (для непустой таблицы):
PHP код:
SELECT TOP 1
(SELECT SUM(Поле2FROM Таблица WHERE Поле1 100),
(
SELECT SUM(Поле2FROM Таблица WHERE Поле1 200),
(
SELECT SUM(Поле2FROM Таблица WHERE Поле1 300FROM Таблица 
Ответить с цитированием