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}'

以上就是DuckDB中如何指定CSV文件读取时的字段类型?的详细内容,更多请关注硕下网其它相关文章!