SQLite 能否从大型文本文件中仅导入指定字段?
我正在尝试使用 2.5Gb 文本文件,该文件在制表符分隔的摘录中包含 293 个字段。
这是前 2 行 + 标题的简短示例。我只关心前几个字段(lang,Titel,lat,lon,types)。
仅将文本文件中的某些字段加载到 SQLite 中的最快方法是什么?
我无法在记事本、Excel 或 Word 中打开文本文件,因为它太大了,所以我无法删除不必要的字段手动。
在 SQLite3 中,我定义了包含所有 293 个字段的目标表。导入我正在使用的数据:
.separator "\t"
.import textfile.txt tablename
这意味着我需要加载整个表,然后才能删除不必要的字段。有更快的方法吗?
谢谢
I'm trying to work with a 2.5Gb text file, which comprises 293 fields in a tab-delimited extract.
Here is a short sample of the first 2 rows + header. I'm only concerned with the first few fields (lang,Titel,lat,lon,types).
What is the fastest way to load only certain fields from a textfile into SQLite?
I can't open the textfile in Notepad, Excel or Word as it's so large, so I can't delete the unnecessary fields manually.
In SQLite3 I have defined the target table including all 293 fields. To import the data I'm using:
.separator "\t"
.import textfile.txt tablename
This means I need to load in the entire table before I can drop the unnecessary fields. Is there a faster way?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看起来您已经有了解决方案,但我建议首先使用正则表达式来清理数据文件。
It looks like you have your solution, but I was going to suggest using regular expression to clean up your data file first.