You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub的DBT Model中引用CSV文件的表名?

在DBT模型中引用CSV文件表名的方法

步骤1:配置数据源(Source)

你的orders.csv存放在tables/datawarehouse目录下,需要先把它定义为dbt的数据源。如果项目里还没有sources.yml,就在models目录下新建一个,或者直接在现有yml文件里补充以下配置:

sources:
  - name: datawarehouse
    schema: your_target_schema  # 替换成你的目标schema,本地运行可填main
    tables:
      - name: orders
        description: "订单数据CSV表"
        external:
          location: 'tables/datawarehouse/orders.csv'  # 相对于dbt项目根目录的路径
        # 可选:定义CSV列信息,方便文档和校验
        columns:
          - name: order_id
            description: "唯一订单ID"
          - name: customer_id
            description: "关联的客户ID"

步骤2:在DBT模型中引用CSV表

在你的模型SQL文件里,用dbt的source()函数直接引用这个CSV表:

select
  order_id,
  customer_id,
  order_date
from {{ source('datawarehouse', 'orders') }}

注意事项

  • 如果是本地运行dbt,需要用支持读取本地CSV的适配器(比如dbt-duckdb、dbt-sqlite);如果是云数据仓,得先把CSV上传到对应存储(如S3),再修改external.location为云存储路径。
  • dbt会自动识别项目内的所有yml配置文件,不管是单独的sources.yml还是和models配置放在同一个文件里。

内容的提问来源于stack exchange,提问作者potatooowedges

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 14:01:40