Mysql 如何将SQL查询组合到一个查询中
我不熟悉SQL,也不知道如何将多个查询组合成一个查询。如何将这两个查询合并为一个查询,以便在一个表中得到一个结果 第一个查询是返回所有不同的文档状态和其他字段:Mysql 如何将SQL查询组合到一个查询中,mysql,sql,oracle,Mysql,Sql,Oracle,我不熟悉SQL,也不知道如何将多个查询组合成一个查询。如何将这两个查询合并为一个查询,以便在一个表中得到一个结果 第一个查询是返回所有不同的文档状态和其他字段: SELECT DISTINCT a.DOC_COMP, a.CRFNO, a.DOC_DATE, a.APPID, b.REQID, b.REQDT, (SELECT COUNT(a.DOC_COMP) AS StatusCount FROM PSCRF a) FROM PSCRF a INNER JOIN PSCRFWF b ON
SELECT DISTINCT a.DOC_COMP, a.CRFNO, a.DOC_DATE, a.APPID, b.REQID, b.REQDT, (SELECT COUNT(a.DOC_COMP) AS StatusCount FROM PSCRF a) FROM PSCRF a INNER JOIN PSCRFWF b ON b.CRFNO = a.CRFNO
第二个查询是返回所有不同的部门:
SELECT DISTINCT c.DEPT_CD,
c.DEPT_NM,
c.USER_ID
FROM EFORM.USERPROFILE c
这两个查询将使用左连接进行连接:
LEFT JOIN USERPROFILE c ON c.USER_ID = b.REQID
结果:
此查询的结果是在交叉表中按部门显示状态计数。示例如下:
Dept1 Dept2 Dept3
Status1 2 1 4
Status2 1 2 1
Status3 2 3 6
谢谢需要更多的信息来确定您的问题,但下面是我的最佳猜测
SELECT a.DOC_COMP AS Status, c.DEPT_CD AS Department, count(*)
FROM PSCRF a INNER JOIN PSCRFWF b ON b.CRFNO = a.CRFNO
LEFT JOIN USERPROFILE c ON c.USER_ID = b.REQID
GROUP BY a.DOC_COMP, c.DEPT_CD
这会让你得到这样的东西
Status Department Count
Status1 Dept1 2
Status1 Dept2 1
Status1 Dept3 4
Status2 Dept1 1
Status2 Dept2 2
Status2 Dept3 1
ect
希望这有助于显示您的数据…@maSTAShuFu您可以查看附件。请参阅@草莓谢谢您的信息。我尝试使用SQL fiddle,但出现错误“无法获取主机连接:无法从基础数据库获取连接”。