join - 加入两个子查询
问题描述
我想看看有多少次有人进了两个以上的球(第一个子查询)以及同一个人总共进了多少球(第二个子查询)。但我不知道如何以正确的方式“加入”两个子查询。
SELECT o2.aantal,o3.gesc,
p.persid,p.voornaam,p.tussenvoegsel,p.achternaam
FROM
( SELECT o.persid, count(o.gesc) AS aantal
FROM opstelere o where o.gesc>2
GROUP BY o.persid ) AS o2,
(select o.persid,sum(o.gesc) as gesc from opstelere o ) as o3
JOIN personen AS p ON p.persid = o3.persid
ORDER BY aantal desc,gesc asc,achternaam asc
解决方案
尝试一个简单的group by
:
SELECT
aantal,
gesc,
persid,
voornaam,
tussenvoegsel,
achternaam,
count(o.gesc) AS aantal
FROM opstelere o
GROUP BY
aantal,
gesc,
persid,
voornaam,
tussenvoegsel,
achternaam
HAVING count(o.gesc) > 2
ORDER BY aantal desc, gesc, achternaam
推荐阅读
- android - 评估项目“:react-native-camera”时出现问题
- c++ - 您可以仅使用标准 c++/c++11 实现一个没有“睡眠”的计时器吗?
- java - 关于activiti 6.0.0
- salesforce - 如何获取我使用自定义闪电组件的所有引用页面?
- php - 如何解决尝试获取非对象的属性?
- angular - 如何在角度 algolia 即时搜索中动态更改搜索参数
- c# - unity:GetGraphicsFormat_Native_TextureFormat 只能从主线程调用
- arrays - 如何将列表变成R中的数组?
- java - 如何在 Android 中以编程方式清除一个信号推送通知?
- java - 在 5 月 1 日之前,我可以使用 RestFB 上传视频,但现在如何上传 RestFB 2.8.0 使用的视频?