|
Posted by SQL Menace on 01/03/07 18:42
select * from TableName where datepart(hh,ColumnName) between 9 and 17
Denis the SQL Menace
http://sqlservercode.blogspot.com/
matturbanowski wrote:
> Hi,
> I have a date/time field in a SQL2000 database, and what I would like
> to do is to filter on a specific part of the field, for example the
> time or hour.
>
> Supposing I have a set of data for the last 5 years and would like to
> filter out any records which are outside working hours i.e. I would
> like to show records where the time is between 9am and 5pm.
>
> Does anyone know if there is a simple way to do this in SQL? If you
> simply don't specify the date part in the where clause (e.g. WHERE
> issuedatetime between '09:00:00' and '17:00:00') it defaults it to
> 1900-01-01 so basically no data is returned.
> The only way I can see to do this is by using the DATEPART function,
> converting it to a varchar, appending 1900-01-01 on to it and
> converting it to a datetime, and then using the where clause as stated
> above. This is quite a long-winded way, however. Any other suggestions?
>
> Thanks,
> Matt
[Back to original message]
|