Datetime 在SQL DEVELOPER中连接日期和时间

Datetime 在SQL DEVELOPER中连接日期和时间,datetime,concatenation,oracle-sqldeveloper,Datetime,Concatenation,Oracle Sqldeveloper,我试图将第1列日期(DD/MM/YY 00:00:00)和第2列时间(hh24:mi:ss)合并到一个列中 我研究了一些代码并尝试了一些(adddate(),To_Date()),但都不起作用。 我想知道当--> A.列1为日期,列2为时间 B.Col_1是日期,Col_2是字符日期数据类型没有特定的格式,但是您可以使用to_CHAR()函数控制每列的打印格式,或者您可以通过更改NLS_日期格式设置来更改整个会话的默认显示格式,如下所示: ALTER SESSION NLS_DATE_FORMA

我试图将第1列
日期(DD/MM/YY 00:00:00)
和第2列时间
(hh24:mi:ss)
合并到一个列中

我研究了一些代码并尝试了一些(
adddate()
To_Date()
),但都不起作用。 我想知道当-->

A.列1为日期,列2为时间


B.Col_1是日期,Col_2是字符日期数据类型没有特定的格式,但是您可以使用to_CHAR()函数控制每列的打印格式,或者您可以通过更改NLS_日期格式设置来更改整个会话的默认显示格式,如下所示:

ALTER SESSION NLS_DATE_FORMAT = 'DD/MM/YY HH24:MI:SS';
现在,如果Col_1已经是一个日期列,Col_2是HH24:MI:SS格式的时间字符串表示形式,则可以将Col_2转换为间隔数据类型,并将其添加到Col_1,如下所示:

Col_1 + cast('0 '||COL_2 as interval day to second)
将时间字符串强制转换为间隔时,需要前导“0”来表示间隔的日部分。在这种情况下是零天

如果没有如上所述更改NLS_DATE_格式字符串,则可以按所需格式输出结果,如下所示:

to_char(Col_1 + cast('0 '||COL_2 as interval day to second), 'DD/MM/YY HH24:MI:SS')

但是,最好将结果保留为本机日期类型,以便以后处理。

忘了提及,我希望最终结果为日期类型,格式为DD/MM/YY HH24:MI:SS。您想要什么?您使用的是什么数据库?Oracle没有
时间
数据类型。您使用的是Oracle SQL Developer,这通常意味着您使用的是Oracle,但可能您使用的是Oracle前端和非Oracle数据库。当您在没有告诉我们错误或显示您试图执行的代码的情况下说“它们都不起作用”时,我们很难提供太多帮助。请记住:好吧,Oracle中没有“时间”数据类型。(您添加了标签:oracle sqldeveloper,因此我假设您使用的是oracle)。日期数据类型始终包括时间。默认日期格式(SQL开发人员也使用)并不总是显示日期的时间部分。您可以(我认为应该)更改格式以显示时间部分和四位数的年份。在首选项>数据库>NLS中更改日期格式。通常我不赞成使用字符操纵来处理日期,但在这里我可能会使用
to_DATE(to_CHAR(col_1,'dd/mm/yyyy')|‘| | col_2)
太棒了@戴夫兹。这就是我一直在寻找的。它起作用了。