我正在尝试使用第二个SELECT
获取一些 ID,然后立即使用该 IDSELECT
我不知道怎么办。
SELECT Employee.Name
FROM Emplyee, Employment
WHERE x = Employment.DistributionID
(SELECT Distribution.DistributionID FROM Distribution
WHERE Distribution.Location = 'California') AS x
这篇文章很长,但这里有一个简短的“提示”
虽然我的 select 的语法很糟糕,但逻辑却不错。不知怎的,我需要那个“x”。因此第二个select
是最重要的。然后我必须在第一个中使用“x”select
。我只是不知道怎么办
/Tip
这是我唯一能想象的事情,我对 Sql 很陌生,我想在练习之前我需要一本书,但现在我已经开始了,我想完成我的小程序。
EDIT:
好吧,我查了一下连接,还是不明白
SELECT Employee.Name
FROM Emplyee, Employment
WHERE x = Employment.DistributionID
LEFT JOIN Distribution ON
(SELECT Distribution.DistributionID FROM Distribution
WHERE Distribution.Location = 'California') AS x
获取错误消息AS
and Left
我使用名称从上红色查找ID,我使用在下表中从上红色找到的ID。然后我将找到的 ID 与 Green 进行匹配。我使用Green ID找到对应的Name
I have California
作为 C# 的输出数据。我想用California
查找 DistributionID。我使用 DistributionID 来查找 EmployeeID。我使用 EmployeeID 来查找姓名
我的逻辑:
Parameter: Distribution.Name (from C#)
Find DistributionID that has Distribution.Name
Look in Employment WHERE given DistributionID
reveals Employees that I am looking for (BY ID)
Use that ID to find Name
return Name
Tables:
NOTE:在这个示例图片中,员工因为选择而重复,他们实际上是单一的
在“Locatie”(中间表)中是位置,我从 C# 中(再次)获取位置,我使用California
举个例子。我需要找到ID
首先也是最重要的!
抱歉,它们不是英文的,但这是创建表: