sách gpt4 ai đã đi

SQL 组按自定义类别(数量)

In lại 作者:行者123 更新时间:2023-12-01 08:50:57 28 4
mua khóa gpt4 Nike

我在编写一个查询时遇到了一些问题。

我有一个由文件及其大小(以字节为单位)组成的表。它看起来像这样:

FileUrl | FileSize
------------------
xyz.docx | 2794496
qwe.ppt | 655360
asd.pdf | 1388782
...
...

我想要的是根据我将定义的不同大小组找到文件数、总文件数的百分比和总文件大小的百分比。所以它应该是这样的:

Size Category | Number of Files | % of Total File Count | ½ of Total File Size
------------------------------------------------------------------------------
0-1 MB | 235 | 80% | 20%
1-10 MB | 57 | 20% | 80%
10-50 MB
...
...

创建此类组然后找到这些百分比的最佳方法是什么?我想不出解决方案,而且我的在线搜索也没有任何帮助。

提前谢谢你

1 Câu trả lời

这是一种使用 áp dụng 和窗口函数的方法:

select v.sizecategory, count(*) as numfiles,
(count(*) / sum(1.0 * count(*)) over () as ratio_files,
(sum(filesize) / sum(sum(filesize) * 1.0)) over () as ratio_sizes
from t outer apply
(values (case when t.filesize < 1000000 then '0-1 MByte'
when t.filesize < 10000000 then '1-10 MByte'
when t.filesize < 50000000 then '10-50 MByte'
. . .
end)
) v(sizecategory)
group by v.sizecategory
order by min(t.filesize);

关于SQL 组按自定义类别(数量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42673144/

28 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com