google-bigquery - google bigquery中的scd2表实现
问题描述
我正在尝试在 BigQuery 中创建一个 SCD(缓慢变化的维度)类型 2 表,而不使用任何 DML
测试架构:
id | date | name | valid_from | valid_to | flag
我需要捕获特定的名称更改id
。
谢谢,
解决方案
您可以创建人工日期分区表来实现这一点。这样,每个日期的数据都是唯一的,并且可以由`select distinct column from `dataset.table$yyyymmdd;`
所有历史记录访问,只需执行select distinct column from dataset.table;
. 此外,您始终可以覆盖/附加到给定日期的分区,而不会伤害他人。
推荐阅读
- symfony - 实体 symfony 中的参考设置值
- c - 排序程序 C 中的分段错误
- kubernetes - Kubernetes POD 自动化 - 根据旧部署的成功完成安排新部署
- python - Django 管理命令参数
- function - f#上二叉树的前序遍历
- java - Java中基于优先级的文件数据更新和多线程
- c# - 如果它们相同,我如何比较 Transforms 数据,然后检查它们是否为空?
- arduino - 比较来自 AdafruitIO_Data 对象的字符串
- java - 通过 Native Query 组合多个参数进行搜索
- java - PagingAndSortingRepository findByattributename 问题