我总是对ORACLE SQL查询中的日期格式感到困惑,并且花费几分钟一起去谷歌,当有人在数据库表中使用不同的日期格式时,有人能解释我最简单的解决方法吗?
例如,我有一个日期列为ES_DATE,数据为27-APR-12 11.52.48.294030000 AM数据类型TIMESTAMP(6)WITH LOCAL TIME ZONE.

我编写了简单的选择查询来获取该特定日期的数据并且它什么也没有返回.有人可以解释一下吗?
select * from table
where es_date=TO_DATE('27-APR-12','dd-MON-yy')
Run Code Online (Sandbox Code Playgroud)
要么
select * from table where es_date = '27-APR-12';
Run Code Online (Sandbox Code Playgroud) 即使我没有在 finally 块中关闭,连接也会自动关闭。
public String look( long id, String codeName, Connection conn ) throws SQLException
{
try
{
StringBuffer sel = new StringBuffer().append(property);
stmt = conn.prepareCall( sel.toString() ); /* fileCode.java:194 */
stmt.setString( 1, nameC );
stmt.setLong( 2, valueI );
stmt.registerOutParameter( 3, oracle.jdbc.OracleTypes.VARCHAR );
stmt.execute();
return stmt.getString( 3 );
}
catch ( SQLException e )
{
if ( e.getMessage().toUpperCase().contains( "NO DATA" ) )
{
return "Value not found";
}
throw e;
}
catch ( Exception e )
{
e.printStackTrace();
}
finally …Run Code Online (Sandbox Code Playgroud)