gpt4 book ai didi

azure - Databricks SQL API : Load csv file without header

转载 作者:行者123 更新时间:2023-12-03 03:26:55 25 4
gpt4 key购买 nike

我正在尝试使用 Load the sample data from cloud storage into the table 将 csv 文件(不带标题)加载到增量表中指南,但我找不到任何如何定义源文件架构/ header 的说明。

COPY INTO my_table
FROM '/path/to/files'
FILEFORMAT = <format>
FORMAT_OPTIONS ('inferSchema' = 'true')
COPY_OPTIONS ('mergeSchema' = 'true');

基于delta-copy-intoFORMAT_OPTIONS我认为,enforceSchema 将是正确的选择,但如何使用 SQL API 提供架构定义?

最佳答案

如果文件中没有 header ,Spark 将自动分配名称,例如 _c0_c1 等,并将它们放入表中。如果你想给出一个有意义的名称,那么你需要使用稍微不同的语法,通过使用 SELECT 选项,这将使你能够重命名列,并在必要时进行类型转换。像这样(仅作为示例):

COPY INTO my_table FROM (
SELECT _c0 as col1, cast(_c1 as data) as date, _c2 as col3, ...
FROM '/path/to/files'
)
FILEFORMAT = <format>
FORMAT_OPTIONS ('inferSchema' = 'true')
COPY_OPTIONS ('mergeSchema' = 'true');

附注我不确定 infrerSchema 是否适合在这里使用,因为无论如何您可能需要进行强制转换等。

关于azure - Databricks SQL API : Load csv file without header,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75459116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com