【问题标题】:Convert a VARCHAR2 to DATE将 VARCHAR2 转换为 DATE
【发布时间】:2021-10-03 19:26:36
【问题描述】:

我需要将同一表中一列(DATEOLD)中的 VARCHAR2 转换为另一列(DATENEW)中的 DATE 格式。我的 VARCHAR2 格式为 YYYYMMDD Eg.20210728

UPDATE SUPPORT 
SET DATENEW = to_date(DATEOLD, 'MM/DD/YYYY')

好像没用?

【问题讨论】:

  • date 是一种数据类型,而不是一种格式。 DATENEW列的数据类型是date,还是varchar2,你只是想让它使用不同的格式模型?请注意,“格式”仅适用于日期的字符串表示形式;它们不适用于 date 数据类型本身。
  • “我的 VARCHAR2 格式为 YYYYMMDD”,但格式为“to_date(DATEOLD, 'MM/DD/YYYY')”。很奇怪

标签: sql oracle oracle11g oracle10g


【解决方案1】:

根据20210728 之类的字符串日期输入,您使用了错误的格式掩码,应该是YYYYMMDD。试试这个版本:

UPDATE SUPPORT
SET DATENEW = TO_DATE(DATEOLD, 'YYYYMMDD');

【讨论】:

    猜你喜欢
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2013-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多