Sql Oracle查询根据另一个查询获取不同记录的计数';s输出
我有一个Oracle表(文件记录),其中包含以下格式的数据:Sql Oracle查询根据另一个查询获取不同记录的计数';s输出,sql,oracle,oracle11g,Sql,Oracle,Oracle11g,我有一个Oracle表(文件记录),其中包含以下格式的数据: file_name record time issue C:/work/file.csv 234RCV 2017-04-10 02.50.35 RCM0001 D:/new/file.csv 235RCV 2017-04-09 07.20.59 RCM0002 D:/new1/fil
file_name record time issue
C:/work/file.csv 234RCV 2017-04-10 02.50.35 RCM0001
D:/new/file.csv 235RCV 2017-04-09 07.20.59 RCM0002
D:/new1/file1.csv 235RCV 2017-03-08 09.28.19 RCM0002
D:/new/file1.csv 236RCV 2017-04-09 03.32.54 RCM0002
C:/new/file.csv 237RCV 2017-04-09 23.24.18 RCM0002
文件名相同,但路径不同。我需要获取每个文件中不同记录的数量。
我的最终输出应该是这样的:
FILE_NAME Number of records
file.csv 3
file1.csv 2
我能够使用以下查询解析文件名:
SELECT DISTINCT substr(S,instr(file_name,'\',-1)+1,length(file_name)-instr(file_name,'\',-1)) AS FILE_NAME FROM (select DISTINCT file_name from FILE_RECS);
不确定如何处理原始请求
谁能帮我弄到这个吗?你就快到了。只需按提取的文件名进行分组
SELECT substr(file_name,instr(file_name,'/',-1)+1,length(file_name)-instr(file_name,'/',-1)) AS FILE_NAME
,COUNT(*) as number_of_records
FROM FILE_RECS
GROUP BY substr(S,instr(file_name,'/',-1)+1,length(file_name)-instr(file_name,'/',-1))
你就快到了。只需按提取的文件名进行分组
SELECT substr(file_name,instr(file_name,'/',-1)+1,length(file_name)-instr(file_name,'/',-1)) AS FILE_NAME
,COUNT(*) as number_of_records
FROM FILE_RECS
GROUP BY substr(S,instr(file_name,'/',-1)+1,length(file_name)-instr(file_name,'/',-1))