我正在使用未创建的黑匣子数据库,也无法编辑。另外,此选择查询需要在jasper报告中运行,因此我无法编写存储过程。
我有一个库存系统,该系统使用父/子映射表并在每次库存状态发生变化时产生新的密钥。我正在使用2个表,这些是重要字段和简化查询:
allinv,其中包含字段: invmaster invkey
和
pclink,其中包含字段(与上述allinv的invkey对应): 父母 孩子
以下查询适用于一个库存项目,并按预期显示进度,但需要知道根目录并提供主密钥。
然后我的问题是,如果我需要使用这种结构返回所有库存物品(删除where子句),那么有一种方法可以自动检测根元素并设置为“开始于”或类似地工作因此我可以将其用作分析窗口查询的子查询,以沿途拉取根,叶和状态?
BEGIN;
SELECT * FROM asyncmultiplerecs();
asyncmultiplerecs
-------------------
c1
c2
(2 rows)
FETCH ALL FROM c1;
column1
---------
1
2
(2 rows)
FETCH ALL FROM c2;
column1
---------
3
4
(2 rows)
COMMIT;
答案 0 :(得分:0)
我不确定我是否完全理解您的问题,但是您当然可以做到:
START WITH stl.parent IS NULL
使用这些行开始分层查询。