我对一个我不完全理解的问题有疑问。想知道是否有人可以帮助我,或者至少帮助我理解。
让我们说我们有一个'职位'表,其中包含两列职位编号'jobnum',以及员工编号'empnum'
Table: Jobs
---------------------------------------
| jobnum | empnum |
---------------------------------------
| 125 | 4785 |
| 100 | 4200 |
| 305 | 4001 |
| 125 | 4224 |
| 102 | 4840 |
| 100 | 4224 |
| 107 | 4534 |
| 255 | 4200 |
| 208 | 4224 |
| 301 | 4785 |
---------------------------------------
我喜欢在某个工作场所完成的工作,让我们把工作“125”,并想知道同一个员工的其他工作。它表明有两个人在职业125.'4224'和'4785'工作。我将如何编写一个SQL查询,该查询将输出执行作业“125”的相同人员的作业。我应该使用加入查询并且不能使用子查询
我理解如何使用子查询来执行此操作,但不知道如何使用Join进行此操作。我假设我会自我加入?也许我不完全理解Joins = /
答案 0 :(得分:0)
使用Join
:
Select
j1.jobnum,
j1.empnum
From jobs j1
Join jobs j2
On j1.empnum = j2.empnum
Where j2.jobnum = 125
查询显示“向我提供jobs
(j1
)中与jobs
(j2
)中有任何记录具有相同empnum的所有记录这就是你正在寻找的自我加入。