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

Откуда:
Сообщений: 13
В БД хранятся данные каждого часа.
~~~
Подскажите пожалуйста как сформировать запрос на выборку, чтобы за период 5 дней выбрать те поля, у которых значение поля Time приходится на "dd/MM/yyyy 00:00:00", т.е. которые приходятся на полночь? Не учитывая дневных часовых данных.
~~~
12 апр 12, 09:55    [12403656]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
palem,
как-то с помощью такого может?
select convert(varchar,getdate(),108)
12 апр 12, 10:41    [12403945]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
Сергей Андр
Member

Откуда:
Сообщений: 23
Alexandr Kr.,

может вот это помочь


http://msdn.microsoft.com/ru-ru/library/ms181765.aspx
SELECT 
   CASE 
      WHEN MIN(value) <= 0 THEN 0 
      WHEN MAX(1/value) >= 100 THEN 1 
   END 
FROM Data ;
12 апр 12, 16:32    [12407041]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
Сергей Андр
Member

Откуда:
Сообщений: 23
Сергей Андр,

мне помогло вот это

  
SELECT p2.prm_string as prm_km, p.prm_string as prm_clock, d.doc_no, edizm =
(CASE 
WHEN p2.prm_string < p.prm_string Then 'часы'
ELSE 'км' 
--WHEN p.prm_string <= p2.prm_string then 'км'
--ELSE 'км2'
END) 
From Documents d inner join journal j on d.doc_id=j.doc_id
               inner join doc_params p on p.doc_id=d.doc_id
               inner join doc_params p1 on p.doc_id=p1.doc_id
               inner join doc_params p2 on p.doc_id=p2.doc_id 
WHERE p2.prm_id=31 and (j.acc_db in (364,36)) AND (d.ord_id=4958) and p.prm_id=32 and p1.prm_id=33
group by p2.prm_string, p.prm_string, d.doc_no  

 


а можешь мне помочь?
12 апр 12, 16:35    [12407067]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
trew
Member

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

declare @table table (dd smalldatetime)

insert into @table values('20120101 12:12:15')
insert into @table values('20120102 00:00:00')
insert into @table values('20120103 12:12:15')
insert into @table values('20120201 00:00:00')

select *
from @table
where DATEPART(hh, dd) =0 AND DATEPART(mi, dd) =0 AND DATEPART(ss, dd) =0    
-- AND dd BETWEEN -- за период 5 дней
12 апр 12, 16:43    [12407139]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
iap
Member

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

а
dd=CAST(dd AS DATE)
не проще?
12 апр 12, 16:46    [12407161]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
iljy
Member

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

зачем так сложно?
select * from @table
where datediff(d,0,dd) = dd
12 апр 12, 16:48    [12407178]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
iap,
where dd=CAST(dd AS DATE)

да, у меня самое безобразное решение ))
12 апр 12, 16:51    [12407209]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите пожалуйста - "условие для выборки данных"  [new]
palem
Member

Откуда:
Сообщений: 13
Благодарю парни!
~~~
Разбираюсь!
18 апр 12, 07:48    [12430786]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить