sql - 如何对两个 SELECT 查询进行除法?
问题描述
我有两个产生数字的查询结果。我想知道如何将这两个查询组合成一个除法运算。
我有我的查询
SELECT COUNT(*) FROM Games WHERE Title = "Zelda" - This gets me my numerator
SELECT COUNT(*) FROM Games - This is my denominator.
我想写一个查询,它是分子/分母的结果集。这可能吗?
解决方案
你可以SELECT
在里面使用FORM
:
SELECT CAST(T1.N AS float)/T2.D FROM
(SELECT COUNT(*) AS N FROM Games WHERE Title = "Zelda") T1,
(SELECT COUNT(*) AS D FROM Games) T2
您的每个查询都可以被视为一个表(带有一个结果变量),只需使用给它们命名AS
,然后创建选择您想要的算术运算的外部查询。(将结果转换为浮点数以获得比率)。
推荐阅读
- node.js - 对中间件函数的路由感到困惑
- matlab - 改变向量的大小
- c# - 我可以先将 SetDefaultConnectionFactory 用于数据库还是先使用模型
- java - Java 版本 9 或更高版本是否有可禁用的 JComboBox 项?
- flutter - Flutter - 如何更改收音机背景颜色
- flutter - 使用 onWillPop 时后退按钮被禁用,并且它发生在应用程序的第一个版本中
- windows - 如何更改 Chromium 浏览器徽标和名称?
- lua - 如何减少 AwesomeWM 中的动画持续时间?
- angular - 如何从 BehaviourSubject 读取数据并将新数据发送到其中
- java - 请任何人参考我如何检查哈希图中的布尔值是否大于用户定义的整数