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

Откуда: Москва
Сообщений: 1131
SQL 2005

День добрый,
есть запрос
SELECT DEALER_CD_C AS DEALER, COUNT(VIN_NO_C) AS Expr1
FROM  T_VIN
GROUP BY DEALER_CD_C

который выдает табличку (см. рисунок). И в этой табличке первая строка null а вторая видимо пробел или еще что-то. В общем надо их объединить чтобы были одной строкой (сумма будет 9223 + 6873 = 16096). Как бы это реализовать?

К сообщению приложен файл. Размер - 0Kb
20 авг 09, 15:08    [7562256]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
iljy
Member

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

group by isnull(DEALER_CD_C, '')
второй параметр зависит от того, что у вас в пустой строке - пробелы или действительно пустая строка.
20 авг 09, 15:11    [7562293]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
Gena928
Member

Откуда: Москва
Сообщений: 1131
iljy,

извините за тупость.
второй параметр пустая строка. Как будет выглядеть GROUP BY??

У меня самого не получацца. ((
20 авг 09, 16:02    [7562693]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
Ramin Hashimzade
Member

Откуда: Азербайджан, Баку
Сообщений: 9979
Блог
а сделать проверить не охота????
20 авг 09, 16:15    [7562803]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
iljy
Gena928,

group by isnull(DEALER_CD_C, '').

вам же вроде как уже и ответили
20 авг 09, 16:16    [7562814]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
Gena928
Member

Откуда: Москва
Сообщений: 1131
Maxx,

ругается.

SELECT DEALER_CD_C AS DEALER, COUNT(VIN_NO_C) AS Expr1
FROM  T_VIN
WHERE (DLR_SHPED_DT_D IS NULL)
GROUP BY ISNULL(DEALER_CD_C, '')


Сообщение 8120, уровень 16, состояние 1, строка 1
Column 'T_VIN.DEALER_CD_C' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


попробовал вот так
SELECT DEALER_CD_C AS DEALER, COUNT(VIN_NO_C) AS Expr1
FROM  T_VIN
WHERE (DLR_SHPED_DT_D IS NULL)
GROUP BY DEALER_CD_C, ISNULL(DEALER_CD_C, '')

по прежнему не то.

К сообщению приложен файл. Размер - 0Kb
20 авг 09, 16:23    [7562870]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
iljy
Member

Откуда:
Сообщений: 8711
Gena928
Maxx,


Сообщение 8120, уровень 16, состояние 1, строка 1
Column 'T_VIN.DEALER_CD_C' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


ну так поставьте в список то же, что и в группировку
SELECT ISNULL(DEALER_CD_C, '') AS DEALER, COUNT(VIN_NO_C) AS Expr1
FROM  T_VIN
WHERE (DLR_SHPED_DT_D IS NULL)
GROUP BY ISNULL(DEALER_CD_C, '')
20 авг 09, 16:26    [7562890]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36799
SELECT ISNULL(DEALER_CD_C, '') AS DEALER, COUNT(VIN_NO_C) AS Expr1
FROM  T_VIN
WHERE (DLR_SHPED_DT_D IS NULL)
GROUP BY ISNULL(DEALER_CD_C, '')
20 авг 09, 16:26    [7562893]     Ответить | Цитировать Сообщить модератору
 Re: Объединение строк  [new]
Gena928
Member

Откуда: Москва
Сообщений: 1131
iljy
Gena928
Maxx,


Сообщение 8120, уровень 16, состояние 1, строка 1
Column 'T_VIN.DEALER_CD_C' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


ну так поставьте в список то же, что и в группировку
SELECT ISNULL(DEALER_CD_C, '') AS DEALER, COUNT(VIN_NO_C) AS Expr1
FROM  T_VIN
WHERE (DLR_SHPED_DT_D IS NULL)
GROUP BY ISNULL(DEALER_CD_C, '')


спасибо большое. работает.
20 авг 09, 16:28    [7562904]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить