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

Откуда:
Сообщений: 926
Есть таблица:

ProductName PCName Site LastUsage T1 T2 T3 T4 T5

AutoCAD 2007 PC76 E56 2013-10-25 11:29:13.000 29 0.94 2835.70 97.78 91.47
Internet Explorer PC76 E56 2013-10-25 11:34:26.000 6 0.19 30.97 5.16 1.00
Microsoft Excel PC76 E56 2013-10-28 08:58:53.000 2 0.06 3.37 1.68 0.11
Microsoft Word PC76 E56 2013-10-28 09:23:54.293 30 0.97 2686.40 89.55 86.66
NormaCS PC76 E56 2013-10-15 11:19:58.000 1 0.03 0.03 0.03 0.00
NormaCS PC76 E56 2013-10-17 11:56:12.000 4 0.13 155.95 38.99 5.03

Нужно вывести данные таким образом, чтобы последние две строки превратились в одну с суммированием по столбцам T1, T2, T3.. а поле LastUsage имело более позднюю дату.

Данные должны выглядеть так:
AutoCAD 2007 PC76 E56 2013-10-25 11:29:13.000 29 0.94 2835.70 97.78 91.47
Internet Explorer PC76 E56 2013-10-25 11:34:26.000 6 0.19 30.97 5.16 1.00
Microsoft Excel PC76 E56 2013-10-28 08:58:53.000 2 0.06 3.37 1.68 0.11
Microsoft Word PC76 E56 2013-10-28 09:23:54.293 30 0.97 2686.40 89.55 86.66
NormaCS PC76 E56 2013-10-17 11:56:12.000 5 0.16 155.98 39.02 5.03
29 окт 13, 10:20    [15044932]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
Glory
Member

Откуда:
Сообщений: 104751
MAULER
с суммированием по столбцам T1, T2, T3.. а поле LastUsage имело более позднюю дату.

Вы не знакомы с аггрегатными функциями SUM/MAX ?
29 окт 13, 10:23    [15044952]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
MAULER
Member

Откуда:
Сообщений: 926
Glory,

К сожалению, знаком в теории ))
29 окт 13, 10:23    [15044957]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
Glory
Member

Откуда:
Сообщений: 104751
MAULER
К сожалению, знаком в теории ))

Ну так познакомьтесь на практике
29 окт 13, 10:26    [15044985]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
MAULER
Member

Откуда:
Сообщений: 926
Glory,

В любом случае - благодарю за наводку!
29 окт 13, 10:27    [15044992]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
MAULER
Member

Откуда:
Сообщений: 926
Glory,
спасибо. Всё получилось :)
29 окт 13, 10:48    [15045126]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
Азагаш
Member

Откуда:
Сообщений: 450
MAULER
Glory,
спасибо. Всё получилось :)

а вот это самое плохое что можно сделать при общении на тематическом форуме.
будьте добры, приведите решение, и больше никогда не оставляйте свои темы в таком виде.
помните: люди будут натыкаться на вашу тему в поиске, пытаясь решить подобную задачу!
и каждый кто вместо ответа на интересующий его вопрос увидит "спасиба у миня палучилас! тему можна зокрывать!", пошлет вам лучи поноса в карму!
29 окт 13, 11:09    [15045260]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
MAULER
Member

Откуда:
Сообщений: 926
Азагаш,
За состояние своей кармы, я, конечно переживаю.
Максимально упростил запрос (не вдаваясm в подробности отчетов SCCM)

select ProductName, PCName, Site, 
       MAX(DATEADD(hh,6,LastUsage)) as LastUsage,
       SUM(T1) as 'T1',
       SUM(T2) as 'T2', 
       SUM(T3) as 'T3', 
       SUM(T4) as 'T4', 
       SUM(T5) as 'T5'
  from v_R_System
  group by ProductName, PCName, Site order by ProductName 
29 окт 13, 11:41    [15045493]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите с запросом  [new]
Азагаш
Member

Откуда:
Сообщений: 450
MAULER,
лучей добра вам :)
29 окт 13, 11:58    [15045616]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить