Hello! 欢迎来到小浪资源网!

DuckDB中如何指定CSV文件读取时的字段类型?


DuckDB中如何指定CSV文件读取时的字段类型?

鸭子如何指定字段类型

在 duckdb 中读取 csv 时,指定列字段类型至关重要,以避免类型转换错误。官方文档提供了以下方法:

通过在查询中使用 with (types={{‘column_name’: ‘data_type’}}) 语法指定列类型映射。例如:

query = f"select * from '{excel_file_path}' with (types={{'监测日期': 'varchar'}})"

注意:必须将类型值用单引号括起来,如示例中的 ‘varchar’。

使用 read_csv 函数读取 csv 文件,并指定 types 参数以提供列类型映射。例如:

query = f""" select * from read_csv('{csv_file_path}',     types = {{         'in_system_at': 'varchar',         'in_hide_at': 'varchar',     }}); """

在查询中使用 cast 函数手动将特定列强制转换为所需类型。例如:

SELECT   CAST(column_name AS data_type) AS converted_column_name FROM '{excel_file_path}'

相关阅读