我是Teradata的新手。我有一个包含数百万条记录的表,我正在尝试使用查找列表基于子集进行查询以提供我的where子句 我的查找列表包含数千条记录。
在SQL Assistant中,这是我尝试过的:
SELECT T.*
FROM a_balance T
JOIN
OPENROWSET (
BULK 'c:\myfile.txt',
FORMATFILE = 'c:\myfileformat.txt'
) B ON T.accountID = B.accountID
您建议在Teradata SQL Assistant中做什么?
答案 0 :(得分:3)
正如@denoeth所建议的那样 -
您可以创建易失性表
(我仍然建议你要求一个临时/游乐场数据库)
<强> VOLATILE 强>
...定义是保留的volatile表 内存仅在定义它的会话期间。 对登录用户假脱机空间收取空间使用费。因为不稳定 表是创建它们的会话的私有表,系统会这样做 不检查创建,访问,修改和删除权限。一个 单个会话可以实现多达1,000个易失性表。SQL数据定义语言语法和示例版本15.10 B035-1144-151K 2015年6月
使用Teradata SQL Assistant导入
(适用于相对较小的数据集)
“工具” - &gt; “选项” - &gt; “导入”
设置/取消设置“忽略导入文件中的第一条记录(跳过标题)”
将“简单导入的最大批量大小”设置为999
create volatile set table accounts (accountID int)
unique primary index (accountID)
on commit preserve rows
;
“文件” - &gt; “导入数据”
insert into accounts (accountID) values (?);
“文件” - &gt; “导入数据”(取消选择)