gpt4 book ai didi

sql - 在SQL中将两个计数结果相互划分

转载 作者:行者123 更新时间:2023-11-29 13:39:04 24 4
gpt4 key购买 nike

我有两个 COUNT() 结果我想分开,但是当我尝试将它组合成一个查询时它不起作用。当我尝试运行此代码时,我在“SELECT”处或附近出现“语法错误”:

SELECT COUNT(student.userid) FROM borrowed CROSS JOIN student WHERE student.userid = borrowed.userid AND current_date > expiredate AND returndate IS NULL / SELECT COUNT(userid) FROM student;

该代码应该获取当前迟到图书馆还书的“学生”的百分比。由“/”分隔的两个代码片段都可以单独工作。左边的:

SELECT COUNT(student.userid) FROM borrowed CROSS JOIN student WHERE student.userid = borrowed.userid AND current_date > expiredate AND returndate IS NULL;

生成一个包含值2的计数表。右边的那个:

SELECT COUNT(userid) FROM student;

生成一个包含值 15 的计数表。

我想得到的是百分比。所以 2/15 应该让我得到大约 13.3%。我如何将其作为单个查询来解决?必须以某种方式将除法设为 float (或其他小数)。有人可以向我提供解决此问题的查询吗?谢谢<3

最佳答案

您可以尝试以下查询:

SELECT COUNT(student.userid)::decimal / (SELECT COUNT(userid) FROM student) 
FROM borrowed
CROSS JOIN student
WHERE student.userid = borrowed.userid
AND current_date > expiredate AND returndate IS NULL;

关于sql - 在SQL中将两个计数结果相互划分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58130866/

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