gpt4 book ai didi

sql - 如何在我的第一次选择中使用第二次选择的结果

转载 作者:行者123 更新时间:2023-12-04 23:43:48 25 4
gpt4 key购买 nike

我正在尝试使用第二个 SELECT 来获取一些 ID,然后在第二个 SELECT 中使用该 ID,但我不知道该怎么做。

SELECT Employee.Name 
FROM Emplyee, Employment
WHERE x = Employment.DistributionID
(SELECT Distribution.DistributionID FROM Distribution
WHERE Distribution.Location = 'California') AS x

这篇文章很长,但这里有一个简短的“提示”

虽然我的 select 语法不好,但逻辑却不错。我不知何故需要那个“x”。因此第二个 select 是最重要的。然后我必须在第一个 select 中使用那个“x”。我只是不知道如何

/提示

这是我唯一能想到的,我是 Sql 的新手,我想在练习之前我需要一本书,但现在我已经开始了,我想完成我的小程序。

编辑:

好的,我查了一下连接,还是不明白

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

ASLeft 获取错误信息

我使用名称从上红色中查找 ID,我使用从下表中的上红色中找到的 ID。然后我将找到的 ID 与 Green 进行匹配。我用Green ID找对应的Name

enter image description here

我将 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

表格:

注意:在此示例图片中,Employee 因为选择而重复,它们实际上是单数

在“Locatie”(中间表)中是 Location,我(再次)从 C# 获取位置,我使用 California 作为示例。我需要首先找到 ID!

enter image description here

对不起,他们不是英文的,但这里是创建表:

enter image description here

最佳答案

试试这个:

SELECT angajati.Nume 
FROM angajati
JOIN angajari ON angajati.AngajatID = angajari.AngajatID
JOIN distribuire ON angajari.distribuireid = distribuire.distribuireid
WHERE distribuire.locatie = 'california'

由于您有一张将员工映射到他们的分布位置的表,您只需在中间加入该表即可创建映射。如果您喜欢 WHERE 子句,您可以使用变量,这样您就可以将其作为存储过程或 C# 代码输出中需要的任何内容来调用。

关于sql - 如何在我的第一次选择中使用第二次选择的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14761088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com