Forum menu
Sql date/ time help
 

[Closed] Sql date/ time help

Free Member
Joined: 17 years ago
Posts: 0
Topic starter   [#6819580]

If I want to test if a date/time is greater than 4am yesterday how would I go about doing it in sql?



   
Free Member
Joined: 13 years ago
Posts: 0
 

check for anything greater than todays date Minus 20hrs



   
Free Member
Joined: 17 years ago
Posts: 349
 

datediff maybe( not sure if that's t-sql specific)? Do you need to consider timezones at all?



   
Free Member
Joined: 17 years ago
Posts: 0
Topic starter  

to_char(start_date, 'YYYYMMDDHH24MISS') > to_ char(sysdate-1,'YYYYMMDD')||'040000'

works. I was sure I'd tried that before asking the question but must have had an error somewhere ๐Ÿ™‚



   
Free Member
Joined: 17 years ago
Posts: 0
 

easier:

your_date > DATEADD(hh, -20, CAST(CAST(GETDATE() AS DATE) AS DATETIME))



   
Free Member
Joined: 15 years ago
Posts: 0
 

to_char(start_date, 'YYYYMMDDHH24MISS') > to_ char(sysdate-1,'YYYYMMDD')||'040000'

Hang on, did you just call to_char on every record in the table? this is a one off right?

/not an SQL guy



   
Free Member
Joined: 17 years ago
Posts: 0
Topic starter  

No use for Oracle though ๐Ÿ™‚



   
Free Member
Joined: 17 years ago
Posts: 0
 

ah, scope creep... ๐Ÿ˜†



   
Free Member
Joined: 15 years ago
Posts: 0
 

Would something like this work?

create_date >= TO_DATE('28/01/2015 04:00:00.000000','MM/DD/YYYY HH24:MI:SS.FF')

/still not an SQL, let alone an oracle, guy



   
Free Member
Joined: 17 years ago
Posts: 401
 

create_date >= CURRENT_DATE - INTERVAL '1 DAY' + INTERVAL '4 hours'