从文本文件中提取特定字段

2024-01-13

我有一个 csv 文件,其中包含超过 5k 个带有标题名称的字段/列。我只想将一些特定字段导入到我的数据库中。

我正在使用本地 infile 来处理其他需要导入的较小文件

LOAD DATA
LOCAL INFILE 'C:/wamp/www/imports/new_export.csv'
INTO TABLE table1
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
(colour,shape,size);

为要跳过的列分配虚拟变量可能很麻烦,而且我更愿意参考使用字段标题来进行未来证明,以防文件有其他字段

我正在考虑在将文件加载到数据库之前对文件使用 awk 。但我在搜索中找到的例子似乎不起作用。

任何有关最佳方法的建议将不胜感激。


这与 MvG 的答案类似,但不需要gawk4 因此使用-F正如该答案中所建议的。它还展示了一种列出所需字段并迭代列表的技术。如果列表很大,这可能会使代码更易于维护。

#!/usr/bin/awk -f
BEGIN {
    col_list = "colour shape size" # continuing with as many as desired for output
    num_cols = split(col_list, cols)
    FS = OFS = ","
}

NR==1 {
    for (i = 1; i <= NF; i++) {
        p[$i] = i # remember column for name
    }
    # next # enable this line to suppress headers.
}

{
    delim = ""
    for (i = 1; i <= num_cols; i++) {
        printf "%s%s", delim, $p[cols[i]]
        delim = OFS
    }
    printf "\n"
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从文本文件中提取特定字段 的相关文章

  • 浏览器关闭后从数据库中删除

    我正在开发一个电子商务应用程序 但问题是 当用户将产品添加到购物车并在订购前关闭浏览器时 购物车会带走所有产品 所有购物车项目都保存在表中 如果用户关闭浏览器而不订购 我只想刷新购物车 您可以使用 Javascript 事件捕获浏览器关闭并
  • 查找缺失值

    我有一个表 有 2 个重要的列 DocEntry WebId 样本数据就像 DocEntry WebId 1 S001 2 S002 3 S003 4 S005 现在我们可以注意到 在 WebId 列中 S004 丢失了 我们如何通过查询找
  • 用于分页的php示例脚本[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 任何人都可以建议一个好的分页 php 脚本 其中人们想要分页显示数据库中的大量项目 以下链接可以帮助您
  • 工厂模式数据库连接

    我正在尝试使用 MySQL 实现数据库连接上的工厂模式 SQL Server 面临奇怪的错误 你调用的对象是空的 在 SQL 命令对象上 internal class SqlServerDB IDatabase private SqlCon
  • PHP/MySQL:检索邻接列表模型中的单个路径

    有没有什么有效的方法可以在不限制深度的情况下根据节点的ID检索邻接列表模型中的单个路径 就像如果我有一个名为 Banana 的节点的 ID 我可以获得以下路径 Food gt Fruits gt Banana 如果不可能的话也不是什么大问题
  • 数据太长,导致列错误(包含国家字符)

    我必须移植一些DBS变成独立的MySQL版本 5 0 18运行于Windows 7 64 位我遇到了一个困扰我的问题 如果我尝试将任何国家 Unicode 字符插入varchar我收到错误 ERROR 1406 22001 Data too
  • 找出会话的默认 SQL Server 架构

    我需要知道正在执行某些 DDL 的 SQL 脚本中当前的默认架构是什么 我不需要设置架构 但我确实需要将对它的引用 名称或 ID 放入变量中 该脚本可能以 Windows 登录身份运行 因此以下内容还不够 SELECT name defau
  • 从 .frm 文件恢复 mysql 数据库

    我每周都会倾倒所有桌子以获得备份 但后来我明白它只是存储表的 frm文件 它不显示表的 MYD 和 MYI 文件 所以我只有我的数据库的 frm 文件 而且我的数据库是innodb 那么我可以用数据库中的数据获取我的数据库吗 是的 这是可能
  • 将 SQL 中的数据存储在数组中

    我正在尝试将 sql 数据库中的数据存储到数组中 目前我有这个 query mysql query SELECT FROM InspEmail WHERE Company LIKE company while row mysql fetch
  • Mysql - 如何比较两个 Json 对象?

    将整个 MySql json 列与 json 对象进行比较的语法是什么 以下不起作用 select count criteria from my alerts where criteria industries 1 locations 1
  • 使用聚合函数时减少 Athena 扫描的数据量

    以下查询扫描 100 MB 的数据 select from table where column1 val and partition id 20190309 然而 下面的查询扫描了 15 GB 的数据 有超过 90 个分区 select
  • MySQL 中如何使用继承?

    所以我正在读一本关于数据库设计原理的书 并读到了有关继承的章节 但我对如何在 MySQL 中将子类与其超类 连接 感到困惑 The table structure would for example look like this 那么我如何
  • 我应该为 MySQL 使用什么 python 3 库? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 据我所知 MySQLdb 仍然没有移植到 Python 3 pypy 上似乎有另一个名为 PyMySQL
  • SQL Server:比较两个表中的列

    我最近完成了从某些应用程序的旧版本到当前版本的迁移 在迁移数据库时遇到了一些问题 我需要一个可以帮助我比较两个表中的列的查询 我的意思不是行中的数据 我需要比较列本身来弄清楚我错过了表结构的哪些变化 看一下红门 SQL 比较 http ww
  • 无效的 PDO 查询不会返回错误

    下面的第二条 SQL 语句在 phpMyAdmin 中返回错误 SET num 2000040 INSERT INTO artikel artikel nr lieferant nr bezeichnung 1 bezeichnung 1
  • 对时间序列数据重新采样

    我有一个以毫秒为单位的时间序列列表 我想对时间序列进行重新采样并对组应用平均值 我如何在 Postgres 中实现它 重新采样 是指聚合一秒或一分钟内的所有时间戳 一秒或一分钟内的所有行形成一组 表结构 date x y z Use dat
  • 在 C# 中循环遍历文件文件夹的最简单方法是什么?

    我尝试编写一个程序 使用包含相关文件路径的配置文件来导航本地文件系统 我的问题是 在 C 中执行文件 I O 这将是从桌面应用程序到服务器并返回 和文件系统导航时使用的最佳实践是什么 我知道如何谷歌 并且找到了几种解决方案 但我想知道各种功
  • $_SESSION 中保存大量信息可以吗?

    我需要存储许多数组 SESSION以防止从 MySQL 检索信息 可以吗 其中 太多 的信息有多少 SESSION还是没有 太多 谢谢 附 或者更好地使用http php net manual en book memcache php ht
  • 更新查询时 ios 中出现“数据库锁定”错误

    我正在使用下面的代码更新查询 using sqlite 但我越来越 database is locked error 我尝试搜索一些 SO 链接 建议关闭数据库 但我再次执行此操作时遇到相同的错误 我已经提到过代码中出现错误的地方 cons
  • 使用 GROUP 和 SUM 的 LINQ 查询

    请帮助我了解如何使用带有 GROUP 和 SUM 的 LINQ 进行查询 Query the database IEnumerable

随机推荐

  • 在 asp.net 中使用表格打印网格视图

    我正在使用 Visual Studio 2008 和 SQL Server 2008 我想打印我的 带有表格的网格视图 使用按钮 在 ASP NET 3 5 中 代码分为三部分 首先这是来自我的默认页面 protected void btn
  • 使用匹配的花括号拆分字符串的最佳方法

    我现在正在使用 C 工作 并且正在使用 JSON Net 将 json 字符串解析为 C 对象 我的问题的一部分是我得到一些像这样的字符串 name John name Joe 当我尝试反序列化时JsonConvert Deserializ
  • 如何初始化 unique_ptr

    我正在尝试向我的类添加一个延迟初始化函数 我对 C 不太精通 有人可以告诉我如何实现它吗 我的类有一个私有成员定义为 std unique ptr
  • 将数据框从长改为宽

    我有一些问题需要改变我的 df 的形状 Data id lt c 1 2 3 4 1 4 1 2 3 a lt c A B C D A D A B C b lt c 1 1 1 1 2 2 3 3 3 c lt c 12 10 12 23
  • Android 原生代码 fork() 存在 IPC/Binder 问题

    我有一个 Android 本机服务器应用程序编译为平台特权模块 可以自行分叉 该模块还使用 Android 服务 例如 SurfaceFlinger 我需要分叉才能为每个客户端分配一个沙盒进程 Fork 工作正常 父进程完全没有问题 但在子
  • 多选模式下具有 md-select 的 md-chips

    当我尝试从 md select 中选择多个值时生成 md chips 时 它不起作用 md chips 是否仅适用于自动完成分析器和输入字段
  • 当 HTTP Status 为 Bad Request 时 HttpResponseMessage 内容丢失

    var response new HttpResponseMessage HttpStatusCode BadRequest Content new StringContent Error in Validation ReasonPhras
  • 如何将代码重构为新文件并保留 git 历史记录?

    所以我想将一个大文件的一部分提取到一个新文件并保留 git 历史记录 这样我就可以运行git blame并查看重构之前的变化 In Git the history is the commits There is no file histor
  • Kafka Producer:使用回调处理异步发送中的异常

    我需要捕获异步发送到 Kafka 时的异常 Kafka生产者API带有一个函数send ProducerRecord record Callback回调 但是当我针对以下两种情况进行测试时 卡夫卡经纪人宕机 主题未预先创建 回调没有被调用
  • Kendo UI 图表 - 如何在加载数据时显示动画?

    我有一个用 JavaScript 生成的 KendoUI 图表 有没有办法用命令清除绘图区域 目的是在等待数据源读取远程数据时显示 正在加载 图像 Thanks 显示和隐藏加载动画是 Display progress kendo ui pr
  • Scala for 循环可以修改其范围之外的变量吗?

    例如假设我有以下内容 var lastSecurity def allSecurities for security lt lastTrade keySet toList lastSecurity security yield securi
  • -[GMSMapView animateToCameraPosition:]: 无法识别的选择器发送到实例

    大家好 我已经在我的应用程序上实现了谷歌地图 sdk 但我在这一特定行上遇到了错误 mapView GMSMapView mapWithFrame CGRectZero 相机 相机 任何人都可以帮我找到解决方案吗 请说明您使用的是哪个版本的
  • 将函数与 OUTER APPLY 一起使用时,返回值而不是 NULL

    使用内联函数时我得到奇怪的结果 这是代码 IF EXISTS SELECT FROM sys objects AS o WHERE name vendor relation users DROP FUNCTION dbo vendor re
  • Mongoid (Rails) 中的两个 1 - N 关系

    场景是 一个账户如何给另一个账户评分 这会导致帐户上出现两个列表 那些我评价过的人和那些评价过我的人 我的评分和给出的评分 这归结为 与同一实体的多个 1 N 关系如何在 Mongoid 中工作 在 Mongoid 的文档中 http mo
  • 如何以编程方式订阅对象的所有事件?

    我正在尝试订阅ALL由类似 WPF GridView 的第 3 方组件公开的事件 以便进行一些调试 除了建议这可能不是调试它的最佳方法以及类似的东西之外 我想知道是否可以做到这一点 对于路由事件 它工作正常 如下所示 var type tr
  • Windows 上基于 Android 配件的软件

    我想使用我的应用程序将我的计算机变成 Android 配件 因此 这将不是专门的硬件 而只是将手机切换到配件模式的 PC 从而在手机上启动一些与主机硬件关联的 Java 应用程序并创建通信通道 我找到了一个示例代码 http android
  • 在 Tensorboard 上显示图像(通过 Keras)

    My X test是 128x128x3 图像 我的Y test是 512x512x3 的图像 我想在每个纪元之后显示输入 X test 的外观 预期输出 Y test 的外观 以及实际输出的样子 到目前为止 我只知道如何在 Tensorb
  • 如何串联执行承诺?

    var promiseReturningFuncs for var i 0 i lt 5 i promiseReturningFuncs push askQuestion var programmers Promise reduce pro
  • 简化 Eclipse 中的完全限定名称

    有人知道 Eclipse 的一个插件 它可以用简单的类名和相应的导入 如果可能 替换完全限定的 Java 类名吗 如果可以作为保存操作来执行 那就更好了 No But you can use Add Import command Ctrl
  • 从文本文件中提取特定字段

    我有一个 csv 文件 其中包含超过 5k 个带有标题名称的字段 列 我只想将一些特定字段导入到我的数据库中 我正在使用本地 infile 来处理其他需要导入的较小文件 LOAD DATA LOCAL INFILE C wamp www i