gpt4 book ai didi

sql - 需要写一个存储过程从SQL配置单元中的yyyymmddhhmmss类型时间戳中提取小时数

转载 作者:可可西里 更新时间:2023-11-01 15:48:47 26 4
gpt4 key购买 nike

需要使用存储过程提取特定时间段内客户的来电号码。具有日期时间的列的格式为 yymmddhhmmss。

20181202112658
20181201102326

当它采用 DATE 格式时(11/09/2018 8:19:57),我在下面使用它来执行上述操作并获取在特定时间内调用的电话数量。

选择 CALLING_NUMBER,

COUNT(CASE WHEN TO_CHAR(CALL_START_TIME,'HH24') BETWEEN '06' AND '08' THEN CALLING_NUMBER END) AS CDR6_9_COUNT,
SUM(CASE WHEN TO_CHAR(CALL_START_TIME,'HH24') BETWEEN '06' AND '08' THEN CALL_DURATION END) AS CDR6_9_DURATION,

最佳答案

只需使用substr():

SELECT CALLING_NUMBER,
SUM(CASE WHEN SUBSTR(CALL_START_TIME, 9, 2) BETWEEN '06' and '08' THEN 1 ELSE 0 END) as CDR6_9_COUNT,
. . .

如有必要,您可能需要先将值转换为字符串:

SELECT CALLING_NUMBER,
SUM(CASE WHEN SUBSTR(CAST(CALL_START_TIME AS string), 9, 2) BETWEEN '06' and '08' THEN 1 ELSE 0 END) as CDR6_9_COUNT,
. . .

关于sql - 需要写一个存储过程从SQL配置单元中的yyyymmddhhmmss类型时间戳中提取小时数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53624741/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com