我有多个表,共享列名,但它们有不同的数据

时间:2014-07-25 13:47:08

标签: sql vba

我在使用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")

1 个答案:

答案 0 :(得分:1)

在oracle查询中使用完全限定的字段名称和表别名!您将避免这些问题并具有更易读的SQL语句。

SELECT p.someField personField, o.someField orderField  
FROM people p  
INNER JOIN orders o ON p.Id = o.buyerId