当前位置: 首页 > 知识库问答 >
问题:

使用第一次查询的信息再次查询SQL表

毋琪
2023-03-14

我正在对PeopleSoft数据库进行查询,不确定是否可以根据初始查询在一次调用中从同一个表中获取信息。例如,我正在访问的表返回EmployeeID、FullName、FirstName、LastName、Position\u NBR和ReportsTo。但是ReportsTo是以经理的Position\u NBR(在同一个表中找到)的形式提供的,我想以name格式提供。我想这样做,但不确定是否可行:

SELECT Employee_ID, FullName, FirstName, LastName, Position_NBR
,(Select Name From Employee Where Position_NBR='12345') As Manager 
From Employee 
Where EmployeeID='8675309'

这是可能的,还是我需要在使用第二件之前完全归还第一件?

共有2个答案

狄承望
2023-03-14

您应该能够通过链接字段来做到这一点。

以下是使用Oracle数据库的一些示例:

例如

SELECT 
  table1.Employee_ID, table1.Name, table1.Boss_ID
  ,(select table2.name from Employee table2 where table1.Boss_ID = table2.Employee_ID) As Manager 
From 
  Employee table1
Where 
  table1.Employee_ID='333'
/

或者,尝试SQL加入。

SELECT 
  table1.Employee_ID, table1.Name, table1.Boss_ID
  ,table2.Name As Manager 
From
  Employee table1
  inner join Employee table2
    on table1.Boss_ID = table2.Employee_ID
Where 
  table1.Employee_ID='333'
/

这是一个包含一些虚假数据的工作示例的链接:

  • http://sqlfiddle.com/#!4/210580/7
于高雅
2023-03-14

是的,您可以参考第一个表,最好将子查询的结果限制为1个结果(以防该员工有2个以上的经理)

SELECT Employee_ID, FullName, FirstName, LastName, Position_NBR
,(Select Top 1 E2.Name From Employee as E2 Where E2.Position_NBR=Employee.Position_NBR) As Manager 
From Employee 
Where EmployeeID='8675309'

(T-SQL语法)

 类似资料:
  • 我有一个关于查询对象两次的问题。我是说我有这样的情况: > - 后来在网站中,我把一个表单编辑一个实体。它就是上述实体之一。所以我查询这个实体的数据库(整体,而不是部分),并把它放在表单中。 问题是,如果我编辑其中一个实体,就不会再次查询它以获取所有字段,因为我以前已经查询过它。 你知道怎么解决这个问题吗?我不想查询选择框的完整实体。

  • 问题内容: 我在SQL Server Management Studio上运行此查询1,并看到它像3条消息一样返回我,但是当内部存储过程中有来自Statistics的近10条至20条消息时,返回的结果相同。发生了什么,为什么我看到它们? 我收到的邮件如下 查询的总经过时间是143ms + 143ms吗? 问题答案: 见下文 输出: 现在添加打印语句和一些变量 输出: 在上面的代码中,总执行时间为1

  • 我正在开发一个带有Spring框架和MySQL数据库的J2EE应用程序。我想执行SQL脚本从java(可能与一个请求映射)只有一次。我将sql语句作为键值对存储在属性文件中,并循环遍历每个键并执行语句。 这是正确的做法吗?或者还有其他方法可以做到这一点吗?提前谢谢。 更新: 正如评论中提到的,我尝试了Spring jdbc intiize数据库,但它没有执行sql文件中的所有查询。只有第一个“创建

  • 问题内容: 所以,我有这个php文件,但是第一个结果没有被包装在’result’div中,因此样式也不正确。所有后续结果均已正确包装。帮助? 编辑:根据评论,我试图拉出html。我承认我是菜鸟,但这是我想出的。似乎无法解决原始问题: scripts_post.php: single_result.php: 编辑#2:这就是上面所说的。也许这里有些东西缠着东西? 问题答案: 找到了问题。真的很傻 实

  • 子查询如图所属,是能够查询到数据的 如果加上 where like 条件就查不出数据了

  • 我试图在JPA2中进行一些查询,但它不断调用另一个查询来获取依赖项的信息 我的课程是: 我把这样的查询称为: 但我的结果是: