我想从oracle数据库中选择一个日期字段,使用 select to_date(trndt, 'yyyymmdd') from cf20gldt
,但系统显示错误。从oracle数据库中选择日期格式ddmmyyyy
回答
更改它作为to_char
SELECT TO_CHAR(trndt, 'yyyymmdd') FROM cf20gldt;
如果您trndt那么你必须改变它作为
SELECT TO_CHAR(TO_DATE(trndt), 'yyyymmdd') FROM cf20gldt;
例如显示系统日期列不是日期类型
SELECT TO_CHAR(sysdate,'yyyymmdd') FROM dual;
您的回答是正确的很远,但是你不应该在没有指定格式的情况下使用to_date。忽略格式使您的select语句依赖于当前的区域设置,这些设置可能与日期字符串中的格式匹配或不匹配。 –
@Naveen:当我在查询中需要使用“select *”,并且需要日期为DD/MM/YYYY格式 – user3782114
@ user3782114时,该怎么做,要做到这一点,您可以使用以下命令:'ALTER SESSION SET NLS_DATE_FORMAT ='DD/MM/YYYY';'。但不要使用'SELECT *'。 –
To_date是将列转换为日期格式。如果您trndt没有日期已经然后输入如下:
select to_char(to_date(trndt), 'yyyymmdd') from cf20gldt;
或者,如果你的列trndate已经是日期格式,那么以下用途: -
select to_char(trndt, 'yyyymmdd') from cf20gldt;
正确,但不要在未指定格式的情况下使用to_date。看到我对纳文答案的相应评论。 –
我写了to_date而没有任何格式,以便它采用数据库格式,然后使用to_char获取所需格式(此处为yyyymmdd)。 – user2342436
是的,我明白这一点。但是,如果日期存储在一个字符串中,它将以某种已知的格式存储。命名格式而不是dbms猜测。英国用户可以将他/她的设置设为DD/MM/YYYY和他的美国同事MM/DD/YYYY。他们这样做,因为他们希望以习惯(美国或英国)的方式显示日期。这决不会影响数据库中存储为varchar2的日期的解释。 –
你可以使用:
SELECT to_char(sysdate, 'yyyy-mm-dd') date,
to_char(sysdate, 'hh24:mm:ss') hr
FROM DUAL;
按字段类型更改sysdate日期。
- 1. 从oracle数据库中选择日期
- 2. 日期格式在Oracle数据库
- 3. 从oracle数据库中选择和订购日期
- 4. Oracle选择日期和格式
- 5. 格式化日期从数据库中
- 6. C#解析日期为“DDMMYYYY”格式?
- 7. 将日期格式转换为ddmmyyyy
- 8. 日期选择器从数据库
- 9. ASP.NET - 从数据库格式化日期
- 10. 格式化日期选择器发布到MySQL数据库
- 11. 数据库输入的日期时间选择器格式化
- 12. 从oracle数据库中选择decimal .00
- 13. 从Django数据库中选择日期格式进行聚合计算
- 14. 在指定日期内从数据库中选择数据
- 15. 从日期(字符串格式)选择
- 16. 格式日期选择* perl
- 17. Oracle - 日期格式
- 18. Oracle日期格式
- 19. Oracle日期格式
- 20. JavaScript格式日期从DDMMYYYY到DD/MM/YYYY
- 21. 如何将日期格式从yyyy-MM-dd更改为ddmmyyyy
- 22. 选择日期+时间+时区与Oracle数据库
- 23. 从数据库的日期字段更改日期格式
- 24. Oracle数据库10g快捷版和日期格式
- 25. Oracle数据库的自定义日期时间格式
- 26. 来自Oracle数据库的PHP格式日期
- 27. C#连接到Oracle数据库日期时间格式
- 28. 日期选择器 - 从数据库和setSpecificDate数组中预订日期
- 29. jquery日期选择器选择日期格式
- 30. 更改引导日期选择器日期格式选择
'to_date()'将字符串转换为* date *。您正在寻找'to_char()'将日期转换为指定格式的字符串(btw:** always **包含实际的错误信息,我们无法从这里看到您的屏幕) –