我在使用VBA从Oracle提取SQL查询时遇到问题,我有多个共享相同名称的表,但是它们包含不同的数据。当我将Oracle查询直接放入excel时,我想要的列将显示为“COLUMN_NAME”,“COLUMN_NAME_1”,“COLUMN_NAME_2”,而不是字面上的“列”,但是您会得到漂移。我正在尝试将它们设置为Excel VBA中的字段,但这会导致运行时错误。
ws = worksheet
rs = recordsheet
i = rows
ws.Cells(i, ColumnNeed).value = rs.("COLUMN_NAME")
ws.Cells(i, ColumnNeed1).value = rs.("COLUMN_NAME_1")
答案 0 :(得分:1)
在oracle查询中使用完全限定的字段名称和表别名!您将避免这些问题并具有更易读的SQL语句。
SELECT p.someField personField, o.someField orderField
FROM people p
INNER JOIN orders o ON p.Id = o.buyerId