Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Агрегатные функции SUM(). Не правильные запросы.  [new]
Ручей
Member

Откуда:
Сообщений: 79
Помогите с запросом. Работает совсем не верно.
Задача: из таблицы длиномеров LBOutTbl выбираются все карнизы LNGTYPE=1. Находится общая площадь.
Группируется по материалу. Потом этот запрос вкладывается в другой для суммы по материалу,
что бы посчиталось всё ДСП вместе с карнизом.
SELECT Round(SUM(BOutTbl.XUNIT*BOutTbl.YUNIT)/1000000.0,2)
 FROM LBOutTbl , BOutTbl, TmpShkaf WHERE BOutTbl.PRICEID = COD AND LNGTYPE = 1
' Запрос на сложение квадратуры карниза ДСП

Второй запрос.
Если поставить вместо 'Столешница' LNGNAME, что бы выводилось название материала, то запрос будет неверен.
SELECT 0, (Switch(LNGTYPE=0,'Столешница',LNGTYPE=4, 'Карниз профильный',LNGTYPE=3,'Плинтус',
LNGTYPE=5,'Цоколь',LNGTYPE=2,'Ф/П',LNGTYPE=6,'Св.панель',
 LNGTYPE=7,'Балюстрада')), ROUND(SUM(XUNIT)/1000,1), 'м.п.'
 FROM LBOutTbl WHERE LNGTYPE <> 1 GROUP BY LNGTYPE

Задача во втором запросе: вместо некоторых общих имён в кавычках поставить значение поля LNGNAME.

К сообщению приложен файл (Proto.7z - 35Kb) cкачать
25 янв 13, 10:25    [13825874]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
aleks2
Guest
Очередная квадратура неучей?

1. Три таблицы - одно условие соединения?
Ручей
SELECT Round(SUM(BOutTbl.XUNIT*BOutTbl.YUNIT)/1000000.0,2)
 FROM LBOutTbl , BOutTbl, TmpShkaf WHERE BOutTbl.PRICEID = COD AND LNGTYPE = 1

Ты уж, страдалец, напрягись. Напиши запрос правельно

SELECT *--Round(SUM(BOutTbl.XUNIT*BOutTbl.YUNIT)/1000000.0,2)
 FROM LBOutTbl
          inner join
         BOutTbl on ...
          inner join
        TmpShkaf on ..
WHERE BOutTbl.PRICEID = COD AND LNGTYPE = 1


Посмотри - чего он у тя выводить. Прослезись.
Тибе сильно полегчает.
25 янв 13, 10:35    [13825938]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
iap
Member

Откуда: Москва
Сообщений: 47145
Ручей,

сервер какой?
Судя по SWITCH - не MSSQL
25 янв 13, 10:36    [13825941]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Ручей
Member

Откуда:
Сообщений: 79
Строка подключения
Provider=Microsoft.Jet.OLEDB.4.0;Data Source="C:\";Extended Properties=dBase IV

Майкрософтовский сервер.
25 янв 13, 10:53    [13826028]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
angel_zar
Member

Откуда: Барнаул
Сообщений: 902
Ручей
Строка подключения
Provider=Microsoft.Jet.OLEDB.4.0;Data Source="C:\";Extended Properties=dBase IV

Майкрософтовский сервер.

Смешно
25 янв 13, 10:55    [13826042]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Ручей
Member

Откуда:
Сообщений: 79
Я не программист. Может и смешно.
25 янв 13, 11:07    [13826124]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Ручей
Строка подключения
Provider=Microsoft.Jet.OLEDB.4.0;Data Source="C:\";Extended Properties=dBase IV

Майкрософтовский сервер.

Это не сервер, а драйвер доступа к файловым базам данных.
Вы в какой программе отлаживаете ваши запросы?
25 янв 13, 12:42    [13826905]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Ручей
Member

Откуда:
Сообщений: 79
Гость333
Это не сервер, а драйвер доступа к файловым базам данных.
Вы в какой программе отлаживаете ваши запросы?

Как в Access, так и в VBS.
25 янв 13, 12:51    [13826959]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Glory
Member

Откуда:
Сообщений: 104751
Ручей
Как в Access, так и в VBS.

А MSSQL тут причем ?
25 янв 13, 12:52    [13826966]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Ручей
Member

Откуда:
Сообщений: 79
Glory
А MSSQL тут причем ?

Я ж не программист, потому и решил, что MSSQL имеет отношение из-за MicroSoft SQL
25 янв 13, 12:54    [13826985]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Glory
Member

Откуда:
Сообщений: 104751
Ручей
Я ж не программист, потому и решил, что MSSQL имеет отношение из-за MicroSoft SQL

Круто.
25 янв 13, 13:01    [13827042]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
angel_zar
Member

Откуда: Барнаул
Сообщений: 902
Glory
Ручей
Я ж не программист, потому и решил, что MSSQL имеет отношение из-за MicroSoft SQL

Круто.


Я тоже так подумал, но почему форум MS SQL выбран, а не Виндовый, Винда самый известный продукт Майкросовт и тоже с такой приставкой
25 янв 13, 13:04    [13827075]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Ручей
Member

Откуда:
Сообщений: 79
Удалите тут эту тему. Сделаю её в другой ветке.
Больше ненужной демагогии, чем толк.
25 янв 13, 13:21    [13827261]     Ответить | Цитировать Сообщить модератору
 Re: Агрегатные функции SUM(). Не правильные запросы.  [new]
Glory
Member

Откуда:
Сообщений: 104751
Ручей
Больше ненужной демагогии, чем толк.

И поменьше претензий и приказов.
25 янв 13, 13:32    [13827400]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить