【发布时间】:2020-10-22 04:23:43
【问题描述】:
我构建了一个查询,以从 2 个表中获取按日期列分组的计数。
select count(*),TO_CHAR(CREATION_DATE,'DD/Mon/YY HH') as Date_TIME,'Table_1' as TABLE_NAME
from TABLE 1
where CREATION_DATE > TO_DATE('01/10/2020','DD/MM/YYYY')
group by TO_CHAR(CREATION_DATE,'DD/Mon/YY HH')
UNION
select count(*),TO_CHAR(CREATION_DATE,'DD/Mon/YY HH') as Date_TIME , 'Table_2' as TABLE_NAME
from TABLE 2
where CREATION_DATE > TO_DATE('01/10/2020','DD/MM/YYYY')
group by TO_CHAR(CREATION_DATE,'DD/Mon/YY HH')
我想从两个表中获取结果,因此我使用了UNION。由于我想要按TO_CHAR(CREATION_DATE, 'DD/Mon/YY HH') 分组的每小时计数分解
输出是这样的:
443 14/Oct/20 04 Table_1
861 14/Oct/20 04 Table_2
371 14/Oct/20 05 Table_1
323 14/Oct/20 06 Table_2
如您所见,我希望输出 counts 在两个表中按 小时 汇总,并给出如下结果这个:
1304 14/Oct/20 04 Table_1
371 14/Oct/20 05 Table_1
323 14/Oct/20 06 Table_2
我可以做到这一点,但这并不实用。我正在考虑 Oracle 中的 CASE 语句,但从未真正实现过。
数据库:甲骨文 编辑:Toad for Oracle
【问题讨论】:
标签: sql database oracle case toad