我刚刚浏览了在线文档,发现在使用 SQL 加载程序加载平面文件时,如果您希望在另一个表上进行连接以从该表中获取值。这不可能。我们需要在这种方法中使用外部表。请确认这是否属实。使用 SQL 加载器时,有什么方法可以加入另一个表?
问问题
1352 次
2 回答
1
是真的。您可以加载到临时表中,然后在加载后运行一个从中选择并连接到另一个表的过程。或者您可以更改为使用外部表,这通常是首选。
于 2013-01-17T15:17:28.957 回答
1
对于外键值较少的情况,有一种解决方法。并且值是预定义的 :) 例如,我们有带有记录的参考表
ID Color
--------
1 Red
2 Blue
3 Green
并加载一个包含字符串值(红色、蓝色和绿色)的“颜色”列的平面文件。我们想在目标表中创建列“color_id”并使用颜色 ID。
color FILLER,
:color_id "decode(:field2, 1, 'Red', 2, 'Blue', 3, 'Green')",
于 2013-01-18T10:59:46.503 回答