我很想尝试一种方法来显示两列中的一列数据。数据是Oracle中的物料清单,我想在第二栏中显示物料清单中的某些项目。
例如,我有一个主项目是123ABC。在此项目中,它具有以下项目... AA1,BB1,CC1。它们都属于同一表中的同一列。
我正在尝试查询以显示两列,第一列将是主项目,第二列将是子项目,显示所有以'AA'开头的项目,如下所示...
Master Item | Sub Item
-------------------------
123ABC | AA1
到目前为止,我有以下...
select distinct msi.item FNUMBER
, msi.description DESCRIPTION
, (select msi1.item
FROM inv.mtl_sys_item msi1
WHERE msi1.item = msi.item)
from
, .mtl_sys_item msi
where msi.segment1 = '123ABC'
order by 1 desc
但这只会在两列中显示主项目'ABC123',而不是第二列中的AA1。
答案 0 :(得分:0)
您的数据必须具有某种父项列。您可以使用它来进行自我加入:
SELECT msi.item as FNUMBER,
msi.description as DESCRIPTION,
msic.item
FROM inv.mtl_sys_item msi JOIN
inv.mtl_sys_item msic
ON msi.item = msic.parent_item -- guessing at the column name
WHERE msi.segment1 = '123ABC'
ORDER BY 1 desc