SQL Oracle openquery 获取项目和项目位置
SQL Oracle openquery to get items and location of items
我正在使用 Oracle 服务器的开放式查询从 BaaN ERP 获取信息。
我的要求是获取一件商品的信息以及该商品的所有库存位置,并在 gridview 中显示这些信息,如附图所示。
例如:我在仓库 1、2、3 和 4 中有商品 CIS-11-2846-01。
在仓库 1 中,我有 100 件位于 R1,仓库 2 有 5000 件位于 R1-A,仓库 3 有 5000 件位于 R2-B,仓库 4 有 1000 件位于 R5-Z。
我设法查询 returns 该商品的所有位置和实际库存,但我不知道如何 "row header" 显示商品编号和生产估计数量。 (图中蓝色备注)
编辑
我的实际查询如下:
SELECT * FROM OPENQUERY
(am3p1, 'SELECT o.T$PDNO, REPLACE(o.T$SITM,'' '','''')T$SITM, o.T$CWAR, o.T$QUNE, o.T$CPES, w.T$LOCA, w.T$STKS FROM baan.tticst001305 o
INNER JOIN baan.twhinr140305 w ON REPLACE(o.T$SITM,'' '','''') = REPLACE(w.T$ITEM,'' '','''')
WHERE o.T$PDNO = ''2GE000632'' AND w.T$LOCA <> '' '' ORDER BY o.T$SITM, w.T$IDAT')
嗯,我不知道 openquery,但我知道 sql。在 SQL 中,您将执行以下操作(如果 o.T$PDNO 是项目名称并且 o.T$QUNE 是数量。)
SELECT o.T$PDNO as item_name, sum(o.T$QUNE) as total
FROM (
SELECT o.T$PDNO, REPLACE(o.T$SITM,' ','')T$SITM, o.T$CWAR, o.T$QUNE, o.T$CPES, w.T$LOCA, w.T$STKS
FROM baan.tticst001305 o
INNER JOIN baan.twhinr140305 w ON REPLACE(o.T$SITM,' ','') = REPLACE(w.T$ITEM,' ','')
WHERE o.T$PDNO = '2GE000632' AND w.T$LOCA <> ' '
ORDER BY o.T$SITM, w.T$IDAT')
)
GROUP BY o.T$PDNO
您没有给出关于如何导出最后两列的任何规则,因此我无法将它们包括在内。
我正在使用 Oracle 服务器的开放式查询从 BaaN ERP 获取信息。
我的要求是获取一件商品的信息以及该商品的所有库存位置,并在 gridview 中显示这些信息,如附图所示。
例如:我在仓库 1、2、3 和 4 中有商品 CIS-11-2846-01。
在仓库 1 中,我有 100 件位于 R1,仓库 2 有 5000 件位于 R1-A,仓库 3 有 5000 件位于 R2-B,仓库 4 有 1000 件位于 R5-Z。
我设法查询 returns 该商品的所有位置和实际库存,但我不知道如何 "row header" 显示商品编号和生产估计数量。 (图中蓝色备注)
编辑
我的实际查询如下:
SELECT * FROM OPENQUERY
(am3p1, 'SELECT o.T$PDNO, REPLACE(o.T$SITM,'' '','''')T$SITM, o.T$CWAR, o.T$QUNE, o.T$CPES, w.T$LOCA, w.T$STKS FROM baan.tticst001305 o
INNER JOIN baan.twhinr140305 w ON REPLACE(o.T$SITM,'' '','''') = REPLACE(w.T$ITEM,'' '','''')
WHERE o.T$PDNO = ''2GE000632'' AND w.T$LOCA <> '' '' ORDER BY o.T$SITM, w.T$IDAT')
嗯,我不知道 openquery,但我知道 sql。在 SQL 中,您将执行以下操作(如果 o.T$PDNO 是项目名称并且 o.T$QUNE 是数量。)
SELECT o.T$PDNO as item_name, sum(o.T$QUNE) as total
FROM (
SELECT o.T$PDNO, REPLACE(o.T$SITM,' ','')T$SITM, o.T$CWAR, o.T$QUNE, o.T$CPES, w.T$LOCA, w.T$STKS
FROM baan.tticst001305 o
INNER JOIN baan.twhinr140305 w ON REPLACE(o.T$SITM,' ','') = REPLACE(w.T$ITEM,' ','')
WHERE o.T$PDNO = '2GE000632' AND w.T$LOCA <> ' '
ORDER BY o.T$SITM, w.T$IDAT')
)
GROUP BY o.T$PDNO
您没有给出关于如何导出最后两列的任何规则,因此我无法将它们包括在内。