Форум: "Базы";
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];
ВнизНе работает выполнение арифметических функций в SQL запросе Найти похожие ветки
← →
AndrewK (2002-02-21 11:28) [0]Помогите. Такая проблема.
Есть запрос
Select
P.Name as "Изделие",
isnull(Min(......), 0) as "На складе",
isnull(Sum(......), 0) as "Всего",
from Products P
group by P.Name
(.....) - некоторый запрос c агрегатной функцией.
Надо сделать четвертый столбец который бы показывал разницу между столбцами "Всего" и "На складе".
Запрос, приведенный ниже, не работает
Select
P.Name as "Изделие",
isnull(Min(......), 0) as F1,
isnull(Sum(......), 0) as F2,
(F2 - F1)
from Products P
group by P.Name
Может я не могу оперировать со столбцами, которые получают с помощью таких функций? Это как-то странно.
Или я что не так делаю?
← →
Bachin (2002-02-21 13:01) [1]какую ошибку выдает? (нет под рукой MSSQL)
← →
AndrewK (2002-02-21 13:05) [2]Server: Msg 207, Level 16, State 3, Line 1
Invalid column name "F2".
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name "F1".
← →
Reindeer Moss Eater (2002-02-21 13:10) [3]В Group By нельзя алиасы использовать
← →
AndrewK (2002-02-21 13:12) [4]И как быть в таком случае?
← →
Eva (2002-02-21 13:20) [5]а так пробовал?
Select
P.Name as "Изделие",
isnull(Min(......), 0) as F1,
isnull(Sum(......), 0) as F2,
isnull(SUM(...)- MIN(...))
from Products P
group by P.Name
← →
AndrewK (2002-02-21 13:41) [6]Производительность резко снизилась
← →
Bachin (2002-02-21 13:47) [7]чуть хитрее :)))
select
Name, f1, f2, f1 - f2 as f3
from
( select
p.Name ,
isnull(min(......), 0) as f1,
isnull(sum(......), 0) as f2
from Products p (nolock)
group by p.Name ) a
← →
AndrewK (2002-02-21 14:23) [8]Заработало !!!
Огромное всем СПАСИБО !!!
(Особенно Bachin)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c