我想计算两个varchar列之间的差异来计算no。几小时或没有。分钟。但只是想知道我该怎么做。我尝试使用TO_DATE,TO_TIMESTAMP函数将varchar列转换为datetime/timestamp,但他们没有帮助,然后尝试减法。任何人都可以分享一些投入如何解决这个问题。任何帮助,将不胜感激。谢谢。如何减去包含时间值作为输入的两个varchar列
我的输入数据如下所示。
Col1 Col2
'7:00 AM' '7:59 PM'
Output :-
779
我想计算两个varchar列之间的差异来计算no。几小时或没有。分钟。但只是想知道我该怎么做。我尝试使用TO_DATE,TO_TIMESTAMP函数将varchar列转换为datetime/timestamp,但他们没有帮助,然后尝试减法。任何人都可以分享一些投入如何解决这个问题。任何帮助,将不胜感激。谢谢。如何减去包含时间值作为输入的两个varchar列
我的输入数据如下所示。
Col1 Col2
'7:00 AM' '7:59 PM'
Output :-
779
SELECT (TO_DATE(Col2, 'HH12:MI AM') - TO_DATE(Col1, 'HH12:MI AM')) * 24 * 60
AS minutes_difference
FROM DUAL;
输出:
MINUTES_DIFFERENCE
------------------
779
您可以使用to_date()
将值转换为日期/时间。这应该工作:
select (to_date(col2, 'HH:MI AM') - to_date(col1, 'HH:MI AM')) * 24 * 60 as minutes
输入栏是为VARCHAR2 – Teja
@Teja。 。 。这应该是'to_date()'。 –
非常感谢你!有效... – Teja