SQLite 能否从大型文本文件中仅导入指定字段?

发布于 2024-11-30 21:34:05 字数 490 浏览 1 评论 0原文

我正在尝试使用 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

So尛奶瓶 2024-12-07 21:34:05

看起来您已经有了解决方案,但我建议首先使用正则表达式来清理数据文件。

It looks like you have your solution, but I was going to suggest using regular expression to clean up your data file first.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文