Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выбрать то чего нет  [new]
Vova_GVP
Guest
Как получить полный список дат и часов за произволный месяц в виде выборки из одного столбца YYYYMMDDHH
Нужно для того чтобы к нему можно было Join-ом присоединить таблицу Traffic с полями
Period; SourceAddress; DestinationAddress; IncomingBytes; OutcomingBytes

по полю Period (char(10)) в виде YYYYMMDDHH.
Дело в том что в некоторые часы трафик отсутствует и соответствующие записи в таблице Traffic тоже отсутствуют. А нужно чтобы присутствовали все значения для времени. Поэтому хочу получить такой список чтобы уже к нему Join-ом присоединить таблицу.
Может кто-нибудь знает какой-нибудь хитрый запрос - так чтобы одним Select-ом , а то не хочется возится с временными таблицами.
13 июл 05, 17:51    [1701603]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать то чего нет  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
left(right) join
13 июл 05, 17:52    [1701608]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать то чего нет  [new]
злой шаман
Member

Откуда: Питер
Сообщений: 1253
select right('0'+cast(day as varchar(2)),2)+right('0'+cast(hour as varchar(2)),2) from
(select 0 as day union all 
select 1 union all 
select 2 union all 
--............
select 30 union all 
select 31) days
cross join
(select 0 as hour union all 
select 1 union all 
select 2 union all 
--............
select 22 union all 
select 23) hours
Плюс проверка на количество дней в месяце.
13 июл 05, 18:09    [1701676]     Ответить | Цитировать Сообщить модератору
 Re: Выбрать то чего нет  [new]
Vova_GVP
Guest
Спасибо !
13 июл 05, 18:12    [1701695]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить