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

Откуда:
Сообщений: 4
Как в колонке "Часов" суммировать данные из колонок 1.....31 и в колонке "Дней" подсчитать количество дней где данные больше нуля. Картинка с другого сайта.
8 ноя 12, 22:40    [13442749]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
qwerty112
Guest
serg1980serg,

суммирование в СКЛ обозначается значком "+"

не благодари, нинада

зы
всегда хотел повстречать, в тёмном переулке, создателя, такого плана, таблиЧек, (1-31) ..., да !
8 ноя 12, 22:52    [13442777]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
serg1980serg
Member

Откуда:
Сообщений: 4
Суммировать я смог, но только создавая в запросе новую колонку
[1]+[2]+[3]+[4]+[5]+[6]+[7]+[8]+[9]+[10]+[11]+[12]+[13]+[14]+[15]+[16]+[17]+[18]+[19]+[20]+[21]+[22]+[23]+[24]+[25]+[26]+[27]+[28]+[29]+[30]+[31] AS Часов
Но мне надо чтоб суммировалось в существующую колонку. Т.е. чтоб данные получившиеся в колонке "Часов" жили не в запросе, а непосредственно в существующей таблице.
Особо интересует как подсчитать количество дней...

P.S. Я только начинаю изучать SQL посему мои вопросы могут показаться смешными.
8 ноя 12, 23:02    [13442803]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
_djХомяГ
Guest
update табица set column=[1]+[2]+........[n]
8 ноя 12, 23:16    [13442852]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37155
serg1980serg
Суммировать я смог, но только создавая в запросе новую колонку
[1]+[2]+[3]+[4]+[5]+[6]+[7]+[8]+[9]+[10]+[11]+[12]+[13]+[14]+[15]+[16]+[17]+[18]+[19]+[20]+[21]+[22]+[23]+[24]+[25]+[26]+[27]+[28]+[29]+[30]+[31] AS Часов
Но мне надо чтоб суммировалось в существующую колонку. Т.е. чтоб данные получившиеся в колонке "Часов" жили не в запросе, а непосредственно в существующей таблице.
Особо интересует как подсчитать количество дней...

P.S. Я только начинаю изучать SQL посему мои вопросы могут показаться смешными.
Создайте вычисляемое поле. Создайте представление. Добавте поле и записывайте в него значение.
8 ноя 12, 23:17    [13442855]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
_djХомяГ
Guest
а вообще структура таблицы неправильная конечно
8 ноя 12, 23:18    [13442857]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
serg1980serg
Member

Откуда:
Сообщений: 4
И в чем же заключается не правильность? Каким еще образом можно сделать табель учета рабочего времени?
8 ноя 12, 23:22    [13442867]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
qwerty112
Guest
serg1980serg
Суммировать я смог, но только создавая в запросе новую колонку
[1]+[2]+[3]+[4]+[5]+[6]+[7]+[8]+[9]+[10]+[11]+[12]+[13]+[14]+[15]+[16]+[17]+[18]+[19]+[20]+[21]+[22]+[23]+[24]+[25]+[26]+[27]+[28]+[29]+[30]+[31] AS Часов
Но мне надо чтоб суммировалось в существующую колонку. Т.е. чтоб данные получившиеся в колонке "Часов" жили не в запросе, а непосредственно в существующей таблице.
Особо интересует как подсчитать количество дней...

P.S. Я только начинаю изучать SQL посему мои вопросы могут показаться смешными.

>> Особо интересует как подсчитать количество дней...
если у тебя всегда в или 0 или 8, то можно просто разделить результат суммирования на 8

если нет, то "закатал рукава" и ...
case when [1]=0 then 0 else 1 end +
case when [2]=0 then 0 else 1 end +
..
case when [31]=0 then 0 else 1 end as [Итого дней]

нууу, или можно "распивотить", но это в любом случае - "ущербно"

---
>> Но мне надо чтоб суммировалось в существующую колонку

не надо, это тебе так просто кажется, - "контузия Экселем", если коротко
всё что можно посчитать запросом - хранить не нужно (за очень редким исключением, которое просто подтверждает правило)

---
>> Я только начинаю изучать SQL

как-то не правильно ты его начинаеш изучать,
вся твоя проблема - исключительно из неправильной организации данных,
структура таб. Табель должна быть "просто и тупо"
идРаботника Дата К-во часов
8 ноя 12, 23:27    [13442878]     Ответить | Цитировать Сообщить модератору
 Re: Суммировать данные из колонок и подсчитать колличество  [new]
serg1980serg
Member

Откуда:
Сообщений: 4
за CASE спасибо.
9 ноя 12, 02:56    [13443507]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить