Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как сложить строки / 24 сообщений из 24, страница 1 из 1
20.02.2018, 13:43
    #39604785
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Ребят, подскажите пожалуйста команду, которая бы у меня суммировала по проекту.
Мой запрос выдает таблицу как на картинке, а надо чтобы он еще общую сумму выдавал (например еще и 187+155,5 и 129+36,5 и т.д.)

Код: sql
1.
2.
3.
4.
5.
6.
select  case row_number() over(partition by dd.projectcode order by dd.holeID) when 1 then dd.PROJECTCODE end as x_project,

sum(cast((case when name = 'totaldrilldepth' then value end) as float))s from drillingdetail dd where dd.holeid in (select holeid from  DRILLINGDETAIL  where cast([DRILLINGDATE] as date)                between '13-feb-2017' and '20-feb-2017'
 ) and cast([DRILLINGDATE] as date)                between '13-feb-2017' and '20-feb-2017'

 group by PROJECTCODE,HOLEID



Кажется у меня кривые руки...
...
Рейтинг: 0 / 0
20.02.2018, 13:45
    #39604786
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,
Проблема в том, что это значения разных скважин одного проекта и их надо сложить. Но чтобы знать что складывать надо узнать какие скважины бурили Holeid, поэтому избавится не могу
...
Рейтинг: 0 / 0
20.02.2018, 13:56
    #39604792
Дедушка
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
а почему вы выводите dd.projectcode только для первой дырки?
выводите для всех и суммируйте потом по нему
...
Рейтинг: 0 / 0
20.02.2018, 14:28
    #39604832
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Дедушкаа почему вы выводите dd.projectcode только для первой дырки?
выводите для всех и суммируйте потом по нему
Чтобы не дублировалось. Значения-то выводятся для всех
Попробовала на всякий случай - все равно не складывает
...
Рейтинг: 0 / 0
20.02.2018, 14:36
    #39604836
Дедушка
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,

вам вот так надо?

x_projectsssKE187342.5KE155.5342.5MA129165.5MA36.5165.5
...
Рейтинг: 0 / 0
20.02.2018, 14:36
    #39604837
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,

вы хе вроде всё под SSRS пилите, он умеет суммировать группировать и тд, зачем это отчётное программирование на TSQL
...
Рейтинг: 0 / 0
21.02.2018, 04:28
    #39605168
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,
Может так:
Код: sql
1.
group by PROJECTCODE,HOLEID With Rollup
...
Рейтинг: 0 / 0
21.02.2018, 04:35
    #39605169
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,
Ну и для красоты:
Код: sql
1.
2.
case When row_number() over(partition by dd.projectcode order by dd.holeID) = 1 then dd.PROJECTCODE 
                When Hole_ID is null Then 'Итого ' + isnull(' по'+cast(dd.PROJECTCODE  as Varchar(3)),'') + ':' end as x_project,
...
Рейтинг: 0 / 0
21.02.2018, 04:37
    #39605170
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,

Туплю - dd.PROJECTCODE уже строка:
Код: sql
1.
2.
case When row_number() over(partition by dd.projectcode order by dd.holeID) = 1 then dd.PROJECTCODE 
                When Hole_ID is null Then 'Итого ' + isnull(' по'+dd.PROJECTCODE,'') + ':' end as x_project,
...
Рейтинг: 0 / 0
21.02.2018, 04:42
    #39605171
Как сложить строки
katish444,

вроде не первый день на форуме, а понятно спрашивать так и не научилась.... Почему для ответа на твой вопрос нам приходится задавать тебе с десяток уточняющих вопросов? Может уже настало время прочитать пункт 6 и все вопросы, связанные с помощью в составлении запросов, задавать в соответствии с требованиями?
...
Рейтинг: 0 / 0
21.02.2018, 06:23
    #39605176
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Добрый Э - Эхkatish444,

вроде не первый день на форуме, а понятно спрашивать так и не научилась.... Почему для ответа на твой вопрос нам приходится задавать тебе с десяток уточняющих вопросов? Может уже настало время прочитать пункт 6 и все вопросы, связанные с помощью в составлении запросов, задавать в соответствии с требованиями?
так в этот раз же все вроде бы понятно, разве нет?
...
Рейтинг: 0 / 0
21.02.2018, 06:23
    #39605177
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Kopellykatish444,

Туплю - dd.PROJECTCODE уже строка:
Код: sql
1.
2.
case When row_number() over(partition by dd.projectcode order by dd.holeID) = 1 then dd.PROJECTCODE 
                When Hole_ID is null Then 'Итого ' + isnull(' по'+dd.PROJECTCODE,'') + ':' end as x_project,


благодарю. Сейчас попробую
...
Рейтинг: 0 / 0
21.02.2018, 06:24
    #39605178
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Дедушкаkatish444,

вам вот так надо?

x_projecttstssKEt187t342.5KEt155.5t342.5MAt129t165.5MAt36.5t165.5
Не, так у меня и получается. А мне надо чтобы KE не дублировалось, а складывалось
...
Рейтинг: 0 / 0
21.02.2018, 06:26
    #39605179
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Kopellykatish444,

Туплю - dd.PROJECTCODE уже строка:
Код: sql
1.
2.
case When row_number() over(partition by dd.projectcode order by dd.holeID) = 1 then dd.PROJECTCODE 
                When Hole_ID is null Then 'Итого ' + isnull(' по'+dd.PROJECTCODE,'') + ':' end as x_project,


Мне надо чтобы он суммировал все метры по проекту, а он разделяет их на скважины
...
Рейтинг: 0 / 0
21.02.2018, 06:28
    #39605180
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Дедушкаkatish444,

вам вот так надо?

x_projecttstssKEt187t342.5KEt155.5t342.5MAt129t165.5MAt36.5t165.5

хотя погодите, если спрятать столбец S, то столбец SS - это то что надо

Подскажите, пожалуйста, каким способом вы этого достигли
...
Рейтинг: 0 / 0
21.02.2018, 06:30
    #39605181
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
TaPaKkatish444,

вы хе вроде всё под SSRS пилите, он умеет суммировать группировать и тд, зачем это отчётное программирование на TSQL
вы столько непонятных слов сказали....
...
Рейтинг: 0 / 0
21.02.2018, 06:30
    #39605182
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,

Нарисуй (хоть в Excel) что тебе нужно на выходе.
...
Рейтинг: 0 / 0
21.02.2018, 06:44
    #39605183
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Kopellykatish444,

Нарисуй (хоть в Excel) что тебе нужно на выходе.
...
Рейтинг: 0 / 0
21.02.2018, 06:45
    #39605184
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Kopelly,
Чтобы он складывал глубины по одному проек5ту, т.е. пока проект КЕ, он суммирует, потом суммирует проект МА и т.д.
...
Рейтинг: 0 / 0
21.02.2018, 06:46
    #39605185
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,

Исключи HOLE_ID из Group by!!!
...
Рейтинг: 0 / 0
21.02.2018, 06:52
    #39605191
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
katish444,

Код: sql
1.
2.
3.
4.
5.
6.
7.
select  dd.PROJECTCODE as x_project,
sum(cast((case when name = 'totaldrilldepth' then value end) as float)) as s 
from drillingdetail dd 
where dd.holeid in (select holeid from  DRILLINGDETAIL  
                             where cast([DRILLINGDATE] as date) between '13-feb-2017' and '20-feb-2017' ) 
   and cast([DRILLINGDATE] as date) between '13-feb-2017' and '20-feb-2017'
 group by PROJECTCODE
...
Рейтинг: 0 / 0
21.02.2018, 06:54
    #39605192
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
Даже проще:

Код: sql
1.
2.
3.
4.
5.
select  dd.PROJECTCODE as x_project,
sum(cast((case when name = 'totaldrilldepth' then value end) as float)) as s 
from drillingdetail dd 
where cast([DRILLINGDATE] as date) between '13-feb-2017' and '20-feb-2017'
 group by PROJECTCODE
...
Рейтинг: 0 / 0
21.02.2018, 06:59
    #39605194
Как сложить строки
katish444так в этот раз же все вроде бы понятно, разве нет?если бы было всё понятно - то первый же ответ в этом топике содержал бы правильное и нужное тебе решение.... Но судя по тому, что топик "растянулся" - непонятно не только лишь мне...
...
Рейтинг: 0 / 0
21.02.2018, 07:05
    #39605196
katish444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сложить строки
KopellyДаже проще:

Код: sql
1.
2.
3.
4.
5.
select  dd.PROJECTCODE as x_project,
sum(cast((case when name = 'totaldrilldepth' then value end) as float)) as s 
from drillingdetail dd 
where cast([DRILLINGDATE] as date) between '13-feb-2017' and '20-feb-2017'
 group by PROJECTCODE



То, что надо!
Благодарю
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как сложить строки / 24 сообщений из 24, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]