Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获得不同的值';类型';从表创建虚拟列-MySQL_Mysql_Select_Join - Fatal编程技术网

如何获得不同的值';类型';从表创建虚拟列-MySQL

如何获得不同的值';类型';从表创建虚拟列-MySQL,mysql,select,join,Mysql,Select,Join,我有这些桌子 tb\U员工: ID_EMP NAME_EMP 1 Employee 1 2 Employee 2 3 Employee 3 4 Employee 4 ID_REQ DESCRIPTION_REQ TYPE_REQ 1 Requirement

我有这些桌子

tb\U员工

ID_EMP           NAME_EMP
1               Employee 1
2               Employee 2
3               Employee 3
4               Employee 4
ID_REQ                  DESCRIPTION_REQ               TYPE_REQ
1                        Requirement 1                   1
2                        Requirement 2                   1
3                        Requirement 3                   1
4                        Requirement 4                   2
5                        Requirement 5                   2
6                        Requirement 6                   2
7                        Requirement 7                   2
ID_DET                        ID_EMP                        ID_REQ
1                               1                             1
2                               1                             2
3                               1                             4
4                               2                             1
5                               2                             6
6                               3                             4
7                               3                             7
tb\U要求

ID_EMP           NAME_EMP
1               Employee 1
2               Employee 2
3               Employee 3
4               Employee 4
ID_REQ                  DESCRIPTION_REQ               TYPE_REQ
1                        Requirement 1                   1
2                        Requirement 2                   1
3                        Requirement 3                   1
4                        Requirement 4                   2
5                        Requirement 5                   2
6                        Requirement 6                   2
7                        Requirement 7                   2
ID_DET                        ID_EMP                        ID_REQ
1                               1                             1
2                               1                             2
3                               1                             4
4                               2                             1
5                               2                             6
6                               3                             4
7                               3                             7
tb\U详细信息

ID_EMP           NAME_EMP
1               Employee 1
2               Employee 2
3               Employee 3
4               Employee 4
ID_REQ                  DESCRIPTION_REQ               TYPE_REQ
1                        Requirement 1                   1
2                        Requirement 2                   1
3                        Requirement 3                   1
4                        Requirement 4                   2
5                        Requirement 5                   2
6                        Requirement 6                   2
7                        Requirement 7                   2
ID_DET                        ID_EMP                        ID_REQ
1                               1                             1
2                               1                             2
3                               1                             4
4                               2                             1
5                               2                             6
6                               3                             4
7                               3                             7
我需要做一个
选择查询
来计算每个员工有多少
需求
以及哪些类型,如下所示:

ID_EMP               NAME_EMP          TYPE_REQ1(virtual column)     TYPE_REQ2 (virt. c.)
1                    Employee 1               2                         4
2                    Employee 2               1                         1
3                    Employee 3               0                         2
4                    Employee 4               0                         0
我真的不知道怎么做。

试试这个

SELECT 
e.ID_EMP 
,e.NAME_EMP
,(CASE WHEN SUM(r.TYPE_REQ=1) IS NULL THEN 0 ELSE SUM(r.TYPE_REQ=1) END ) TYPE_REQ1
,(CASE WHEN SUM(r.TYPE_REQ=2) IS NULL THEN 0 ELSE SUM(r.TYPE_REQ=2) END ) TYPE_REQ2
FROM 
tb_employee e
LEFT JOIN tb_detail d ON (e.ID_EMP=d.ID_EMP)
LEFT JOIN  tb_requirements r ON (d.ID_REQ=r.ID_REQ)
GROUP BY e.ID_EMP

太棒了!但是,这仅显示第一名员工的“详细信息”(在本例中为
ID\u EMP 1
)。。。我将尝试修改query@JhonatanSandoval看到我的更新答案与左joinGREAT!!但是现在我在某些行中看到
NULL
,如何将其设置为
0
?我记得好像
是空的(总和…
?很好!!谢谢你的帮助!适当的DDL和/或SQLFIDLE以及所需的结果集可能会有所帮助