TO_DATE('01/01/1970 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
konverterar en sträng (första argument) i ett visst format (andra argument) till ett datum.
(create_date / ( 60 * 60 * 24 ))
create_date innehåller sekunder, detta uttryck omvandlar dem till antalet dagar (1 minut =60 sekunder, 1 timme =60 minuter, 1 dag =24 timmar => 60*60*24 =antalet sekunder på en dag). När du lägger till ett nummer till ett datum tror Oracle att det här numret innehåller dagar, det är därför du behöver en sådan konversation.
TO_DATE('01/01/1970 00:00:00', 'MM/DD/YYYY HH24:MI:SS') + (create_date / ( 60 * 60 * 24 ))
ger dig ett datum lagrat i create_date men i "traditionellt" format
Det verkar som om du behöver jämföra unix-tid med datum. Det skulle vara bättre att använda detta villkor:
Select
....
From
...
Where create_date = trunc( (TO_DATE('06/30/14 21:41:11', 'MM/DD/YY HH24:MI:SS')
- TO_DATE('01/01/1970 00:00:00', 'MM/DD/YYYY HH24:MI:SS')
) * 24 * 60 * 60
);