我有一个表“table_one”,其中包含两个字段。一个是文件系统上的文件夹路径(“directory_path”),例如“C:/ folderOne”,另一个是该文件夹中包含的文件总大小(“total_sz_bytes”),例如“4235” 。“
我正在尝试使用SQL查询生成值列表,从表的顶部开始,其总文件大小的SUM小于一定量,给予查询(例如,10000字节为例子)。
到目前为止,我有以下查询:
SELECT directory_path FROM table_one where 10000 >=
(select sum(total_sz_bytes) from table_one);
但如果所有条目的总和小于10000的数字,则所有这些都会返回表中的所有条目。因此,如果表中有三个文件夹,“folder_one”,“folder_two”和“folder_three”,如果文件总大小小于10000,则查询将返回所有文件夹,但如果文件总大小则不会返回大于10000.如果folderOne + folderTwo为7000则无关紧要;如果它们全部放在一起大于10000,则查询不返回任何内容。
如何修改此查询以获取部分列表?
答案 0 :(得分:0)
我认为您需要查看HAVING条款,如果我理解您的问题,以下内容应该有效:
SELECT directory_path,
SUM(total_sz_bytes) as total_size
FROM table_one
GROUP BY directory_path
HAVING total_size <= 10000