SQL,Northwind数据库练习初学者问题
我是SQL的初学者,所以我不知道如何解决这个问题。这是与Northwind有关的,由Oracle完成。 我有一个员工表,每个员工都有另一个作为经理的员工ID(即员工报告对象): 我需要把它翻过来,这样员工就不用有经理了,经理应该在一个单元格中有一个下属列表SQL,Northwind数据库练习初学者问题,sql,oracle,northwind,Sql,Oracle,Northwind,我是SQL的初学者,所以我不知道如何解决这个问题。这是与Northwind有关的,由Oracle完成。 我有一个员工表,每个员工都有另一个作为经理的员工ID(即员工报告对象): 我需要把它翻过来,这样员工就不用有经理了,经理应该在一个单元格中有一个下属列表 我应该如何处理这个问题?我不知道…我认为要列出所有下属,您应该使用分层查询: select * from employees start with NAME = <NAME> connect by REPORTSTO = prio
我应该如何处理这个问题?我不知道…我认为要列出所有下属,您应该使用分层查询:
select *
from
employees
start with NAME = <NAME>
connect by REPORTSTO = prior EMPLOYEE_ID ;
选择*
从…起
员工
以名称开头=
connect by REPORTSTO=以前的员工\u ID;
你这里也有例子
注意:将列表放在一个单元格中,这是后面的步骤
在“连接方式”中编辑还原的员工id您可以将其连接到一个单元格中,但我不确定这是否是您想要的,或者该表单中的数据将用于什么用途。您希望数据彼此位于不同的单元格中 这里还有一个oracle解决方案的示例。
下属仅为N-1下属或N-2、N-3等?您需要将此作为查询的结果吗?或者您需要将其作为表模式的设计?如果是后者,你应该放弃这个想法,转而创建一个下属表。employee表的结构是什么?@squillman它应该是一个查询的结果,不能以任何方式编辑该表。这是一个数据库课程的练习。Northwind是SQL Server示例数据库,而不是Oracle。为什么要在Oracle数据库中使用该模式?您确定使用的是Oracle而不是SQL Server吗?或者您是否在使用Oracle的
HR
模式而不是Northwind?从根本上说,在一个单元格中存储多个值也是没有意义的——这违反了正确规范化的所有规则。谢谢!这些例子是迄今为止我得到的最好的例子。