File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Oracle/OAS and the fly likes Unable to fetch records by using 'where' clause for a date type field in sql Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login
JavaRanch » Java Forums » Products » Oracle/OAS
Reply Bookmark "Unable to fetch records by using Watch "Unable to fetch records by using New topic
Author

Unable to fetch records by using 'where' clause for a date type field in sql

Vinod Vinu
Ranch Hand

Joined: Aug 30, 2009
Posts: 217
Hi, i'm not good in sql. I'm using oracle as database. On Toad, i'm trying to fetch records using a 'where' clause for a data type field.

what i have done in the past is


I did not got any results here since i have realised that i had compared a date type with a string value.

updated_date is date type field with values like 12/16/2010 11:50:00 PM in the table exchange_rate

12 is month, 16 is date and 2010 ofcourse you know that it is year as format.

then i modified my query as
select * from exchange_rate where updated_date = to_date( '12/16/2010','mm/dd/yyyy')

but still nothing is getting. plese tell me where i'm doing mistake.

thanks in advance.


Vinod Kumar Nair
"Any fool can write code that a computer can understan. Good programmers write code that humans can understand."
Christophe Verré
Marshal

Joined: Nov 24, 2005
Posts: 14361



[SCBCD Wall of Fame] [My Blog]
All roads lead to JavaRanch
Help Japan. Make a donation.
Vinod Vinu
Ranch Hand

Joined: Aug 30, 2009
Posts: 217
Christophe Verré wrote:



Hi chris,
It is however working with following sql query


it is not working with following sql query


Any idea what is the difference in both queries and what is wrong in the second one ?

thanks in advance
Christophe Verré
Marshal

Joined: Nov 24, 2005
Posts: 14361

The second one will only work if the time is 00:00:00. TO_DATE with MM/DD/YYYY generates a date whose time is 00:00:00. So you won't get records whose date looks like 12/16/2010 11:50:00 PM. Instead, you have to convert the date field into a character.
Vinod Vinu
Ranch Hand

Joined: Aug 30, 2009
Posts: 217
Christophe Verré wrote:The second one will only work if the time is 00:00:00. TO_DATE with MM/DD/YYYY generates a date whose time is 00:00:00. So you won't get records whose date looks like 12/16/2010 11:50:00 PM. Instead, you have to convert the date field into a character.


really appreciated.
I will always keep this in my mind.

thanks for your support
Martin Vajsar
Bartender

Joined: Aug 22, 2010
Posts: 1217

You might also be interested in the TRUNC function used on dates (see Oracle documentation). It is especially usefull if you need to do some date arithmetics; for simple WHERE clause it is probably no better than Christophe's solution.
 
 
subject: Unable to fetch records by using 'where' clause for a date type field in sql
 
Threads others viewed
Column name too wide
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
date problem
this is my query running succesfully in database but in my java program rs.next() is false
Hibernate date in criteria
WebSphere development made easy
without the weight of IBM tools
http://www.myeclipseide.com

cast iron skillet 49er

more from paul wheaton's glorious empire of web junk: cast iron skillet diatomaceous earth rocket mass heater sepp holzer raised garden beds raising chickens lawn care CFL flea control missoula heat permaculture