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

Откуда:
Сообщений: 202
например, в результате выборок с таблиц результирующая таблица получилась с 100 полями.
и в каждом поле есть null values.
естесна можно делать так:

select 
    isnull(field_1, 0),
    isnull(field_2, 0),
     ...
    isnull(field_100, 0)
from (...)

есть ли такая штука в MS Server которая позволяет получить выборку
select * from (...) 
без null values?
30 июн 11, 15:34    [10900557]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
Glory
Member

Откуда:
Сообщений: 104751
yado4eg
есть ли такая штука в MS Server которая позволяет получить выборку
select * from (...) 
без null values?

Есть. Называется view-представление
30 июн 11, 15:35    [10900575]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
yado4eg
Member

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

вью как вариант, thx
думал может есть НЕЧТО для такого случая :) типа

select with ISNULL(0) 
        *
from
30 июн 11, 15:39    [10900638]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
Glory
Member

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

вью как вариант, thx
думал может есть НЕЧТО для такого случая :) типа

select with ISNULL(0) 
        *
from

Типов данных вообще то больше чем один

Сообщение было отредактировано: 30 июн 11, 15:46
30 июн 11, 15:45    [10900711]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
yado4eg
Member

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



ээээ вопще-то да
select with ISNULL(0, '') 
        *
from
0 для чисел, '' - для букавак )))), но все же.
вью подходит когда у тебя есть готовый скрипт, а вот на этапе разработки тебе вдруг не нужны НУЛЫ.. вью не подходит.
просто напрягает многа букав.
30 июн 11, 15:51    [10900765]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
Glory
Member

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



ээээ вопще-то да
select with ISNULL(0, '') 
        *
from
0 для чисел, '' - для букавак )))), но все же.
вью подходит когда у тебя есть готовый скрипт, а вот на этапе разработки тебе вдруг не нужны НУЛЫ.. вью не подходит.
просто напрягает многа букав.

Если вам не нужны NULL-ы, то зачем они разрешены в таблицах ?
Или по крайней мере не заменены в этих самых таблицах ?
30 июн 11, 15:56    [10900822]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
yado4eg
Member

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


нулов в таблицах нет, например в результате разворота данных они появляются
30 июн 11, 16:00    [10900877]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
Верблюд
Member

Откуда: Яженичеловек!!!
Сообщений: 65007
yado4eg
Glory,


нулов в таблицах нет, например в результате разворота данных они появляются


Генерируйте запрос по метаданным, что бы руками по сто полей isnull(xx, 0) не вбивать - в чем проблема-то?
30 июн 11, 16:10    [10901015]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
yado4eg
Member

Откуда:
Сообщений: 202
Верблюд
запрос по метаданным


это каг ?
30 июн 11, 16:14    [10901067]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
Верблюд
Member

Откуда: Яженичеловек!!!
Сообщений: 65007
yado4eg
Верблюд
запрос по метаданным


это каг ?


Что-то типа такого

select 'select ' + 
(select quotename(clmns.name, '[') + ' = isnull(' + quotename(clmns.name, '[') + ', 0), '
FROM sys.tables AS tbl
	inner join  sys.all_columns AS clmns ON clmns.object_id=tbl.object_id
WHERE tbl.name='TableName' and SCHEMA_NAME(tbl.schema_id)='dbo'
ORDER BY clmns.column_id ASC
for xml path('')) 
+ '0 from dbo.TableName'

и потом допилить напильником
30 июн 11, 16:40    [10901407]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31978
yado4eg
0 для чисел, '' - для букавак )))), но все же.
Ага, ну и ещё константы для десятка типов перечислить :-)
30 июн 11, 17:10    [10901724]     Ответить | Цитировать Сообщить модератору
 Re: abAut NULL values  [new]
yado4eg
Member

Откуда:
Сообщений: 202
Верблюд
yado4eg
пропущено...


это каг ?


Что-то типа такого

select 'select ' + 
(select quotename(clmns.name, '[') + ' = isnull(' + quotename(clmns.name, '[') + ', 0), '
FROM sys.tables AS tbl
	inner join  sys.all_columns AS clmns ON clmns.object_id=tbl.object_id
WHERE tbl.name='TableName' and SCHEMA_NAME(tbl.schema_id)='dbo'
ORDER BY clmns.column_id ASC
for xml path('')) 
+ '0 from dbo.TableName'

и потом допилить напильником

+500, thx

alexeyvg,
Ага, ну и ещё константы для десятка типов перечислить :-)


в микасафтах придумать чёта смогли бы..
дела в том что оно нах никаму не нада, редко кто-то с таким вопросом задается:)
30 июн 11, 17:16    [10901775]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить