更新数据库文档 20260201-2
This commit is contained in:
@@ -174,7 +174,8 @@ def build_recording_client(
|
|||||||
tz = ZoneInfo(tz_name)
|
tz = ZoneInfo(tz_name)
|
||||||
ts = datetime.now(tz).strftime("%Y%m%d-%H%M%S")
|
ts = datetime.now(tz).strftime("%Y%m%d-%H%M%S")
|
||||||
fetch_root = _cfg_get(cfg, "pipeline.fetch_root") or _cfg_get(cfg, "io.export_root") or "export/JSON"
|
fetch_root = _cfg_get(cfg, "pipeline.fetch_root") or _cfg_get(cfg, "io.export_root") or "export/JSON"
|
||||||
output_dir = Path(fetch_root) / f"{str(task_code).upper()}-{run_id}-{ts}"
|
task_upper = str(task_code).upper()
|
||||||
|
output_dir = Path(fetch_root) / task_upper / f"{task_upper}-{run_id}-{ts}"
|
||||||
|
|
||||||
return RecordingAPIClient(
|
return RecordingAPIClient(
|
||||||
base_client=base_client,
|
base_client=base_client,
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -69,6 +68,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_assistant_ex
|
||||||
|
WHERE assistant_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.*, e.*
|
SELECT m.*, e.*
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -53,6 +52,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_groupbuy_package_ex
|
||||||
|
WHERE groupbuy_package_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.package_name, m.duration_seconds, e.start_clock, e.end_clock, e.effective_status
|
SELECT m.package_name, m.duration_seconds, e.start_clock, e.end_clock, e.effective_status
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -77,6 +76,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_member_card_account_ex
|
||||||
|
WHERE member_card_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联查询卡片及折扣配置
|
-- 关联查询卡片及折扣配置
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -40,6 +39,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_member_ex
|
||||||
|
WHERE member_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.*, e.point, e.growth_value, e.status
|
SELECT m.*, e.point, e.growth_value, e.status
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -46,6 +45,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_site_ex
|
||||||
|
WHERE site_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.*, e.*
|
SELECT m.*, e.*
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -51,6 +50,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_store_goods_ex
|
||||||
|
WHERE site_goods_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.goods_name, m.sale_price, m.sale_qty, e.unit, e.stock_qty, e.cost_price
|
SELECT m.goods_name, m.sale_price, m.sale_qty, e.unit, e.stock_qty, e.cost_price
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -39,6 +38,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_table_ex
|
||||||
|
WHERE table_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.table_name, m.site_table_area_name, e.show_status, e.table_status
|
SELECT m.table_name, m.site_table_area_name, e.show_status, e.table_status
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -43,6 +42,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_tenant_goods_ex
|
||||||
|
WHERE tenant_goods_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.goods_name, m.market_price, e.cost_price, e.min_discount_price
|
SELECT m.goods_name, m.market_price, e.cost_price, e.min_discount_price
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -51,6 +50,19 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:ledger_start_time, ledger_end_time, composite_grade_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_assistant_service_log_ex
|
||||||
|
ORDER BY ledger_start_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT m.nickname, m.ledger_amount, e.table_name, e.assistant_name, e.grade_status
|
SELECT m.nickname, m.ledger_amount, e.table_name, e.assistant_name, e.grade_status
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -46,4 +45,18 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 主表可用时间字段:create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按主表时间字段)
|
||||||
|
SELECT e.*
|
||||||
|
FROM billiards_dwd.dwd_assistant_trash_event m
|
||||||
|
JOIN billiards_dwd.dwd_assistant_trash_event_ex e ON m.assistant_trash_event_id = e.assistant_trash_event_id
|
||||||
|
ORDER BY m.create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
与主表 `dwd_assistant_trash_event` 通过 `assistant_trash_event_id` 关联,提供台桌和台区名称信息。
|
与主表 `dwd_assistant_trash_event` 通过 `assistant_trash_event_id` 关联,提供台桌和台区名称信息。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -59,4 +58,18 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 主表可用时间字段:create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按主表时间字段)
|
||||||
|
SELECT e.*
|
||||||
|
FROM billiards_dwd.dwd_groupbuy_redemption m
|
||||||
|
JOIN billiards_dwd.dwd_groupbuy_redemption_ex e ON m.redemption_id = e.redemption_id
|
||||||
|
ORDER BY m.create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
与主表 `dwd_groupbuy_redemption` 通过 `redemption_id` 关联,提供门店、台桌名称、操作员等扩展信息。
|
与主表 `dwd_groupbuy_redemption` 通过 `redemption_id` 关联,提供门店、台桌名称、操作员等扩展信息。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -46,4 +45,18 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 主表可用时间字段:change_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按主表时间字段)
|
||||||
|
SELECT e.*
|
||||||
|
FROM billiards_dwd.dwd_member_balance_change m
|
||||||
|
JOIN billiards_dwd.dwd_member_balance_change_ex e ON m.balance_change_id = e.balance_change_id
|
||||||
|
ORDER BY m.change_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
与主表 `dwd_member_balance_change` 通过 `balance_change_id` 关联,提供操作员和门店名称等扩展信息。
|
与主表 `dwd_member_balance_change` 通过 `balance_change_id` 关联,提供操作员和门店名称等扩展信息。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -42,6 +41,19 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
与主表 `dwd_platform_coupon_redemption` 通过 `platform_coupon_redemption_id` 关联,提供操作员等扩展信息。
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 主表可用时间字段:coupon_free_time, create_time, consume_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按主表时间字段)
|
||||||
|
SELECT e.*
|
||||||
|
FROM billiards_dwd.dwd_platform_coupon_redemption m
|
||||||
|
JOIN billiards_dwd.dwd_platform_coupon_redemption_ex e ON m.platform_coupon_redemption_id = e.platform_coupon_redemption_id
|
||||||
|
ORDER BY m.create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
|
与主表 `dwd_platform_coupon_redemption` 通过 `platform_coupon_redemption_id` 关联,提供操作员等扩展信息。
|
||||||
**注意**: `coupon_remark` 字段在抖音渠道的核销记录中包含核验信息。
|
**注意**: `coupon_remark` 字段在抖音渠道的核销记录中包含核验信息。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -64,6 +63,18 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
与主表 `dwd_recharge_order` 通过 `recharge_order_id` 关联,提供操作员、各类金额明细等扩展信息。
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:revoke_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_recharge_order_ex
|
||||||
|
ORDER BY revoke_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
|
与主表 `dwd_recharge_order` 通过 `recharge_order_id` 关联,提供操作员、各类金额明细等扩展信息。
|
||||||
**注意**: 样本数据获取时因日期解析错误未能获取。
|
**注意**: 样本数据获取时因日期解析错误未能获取。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -48,4 +47,18 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 主表可用时间字段:pay_time, create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按主表时间字段)
|
||||||
|
SELECT e.*
|
||||||
|
FROM billiards_dwd.dwd_refund m
|
||||||
|
JOIN billiards_dwd.dwd_refund_ex e ON m.refund_id = e.refund_id
|
||||||
|
ORDER BY m.pay_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
与主表 `dwd_refund` 通过 `refund_id` 关联,提供退款状态和渠道等扩展信息。
|
与主表 `dwd_refund` 通过 `refund_id` 关联,提供退款状态和渠道等扩展信息。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -51,6 +50,19 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:revoke_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_settlement_head_ex
|
||||||
|
ORDER BY revoke_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 关联主表与扩展表
|
-- 关联主表与扩展表
|
||||||
SELECT
|
SELECT
|
||||||
@@ -59,7 +71,6 @@ SELECT
|
|||||||
FROM billiards_dwd.dwd_settlement_head m
|
FROM billiards_dwd.dwd_settlement_head m
|
||||||
JOIN billiards_dwd.dwd_settlement_head_ex e
|
JOIN billiards_dwd.dwd_settlement_head_ex e
|
||||||
ON m.order_settle_id = e.order_settle_id;
|
ON m.order_settle_id = e.order_settle_id;
|
||||||
|
|
||||||
-- 统计备注订单
|
-- 统计备注订单
|
||||||
SELECT order_remark, COUNT(*)
|
SELECT order_remark, COUNT(*)
|
||||||
FROM billiards_dwd.dwd_settlement_head_ex
|
FROM billiards_dwd.dwd_settlement_head_ex
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -56,4 +55,18 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 主表可用时间字段:create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按主表时间字段)
|
||||||
|
SELECT e.*
|
||||||
|
FROM billiards_dwd.dwd_store_goods_sale m
|
||||||
|
JOIN billiards_dwd.dwd_store_goods_sale_ex e ON m.store_goods_sale_id = e.store_goods_sale_id
|
||||||
|
ORDER BY m.create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
与主表 `dwd_store_goods_sale` 通过 `store_goods_sale_id` 关联,提供销售详情、折扣优惠等扩展信息。
|
与主表 `dwd_store_goods_sale` 通过 `store_goods_sale_id` 关联,提供销售详情、折扣优惠等扩展信息。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -36,4 +35,18 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 主表可用时间字段:adjust_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按主表时间字段)
|
||||||
|
SELECT e.*
|
||||||
|
FROM billiards_dwd.dwd_table_fee_adjust m
|
||||||
|
JOIN billiards_dwd.dwd_table_fee_adjust_ex e ON m.table_fee_adjust_id = e.table_fee_adjust_id
|
||||||
|
ORDER BY m.adjust_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
与主表 `dwd_table_fee_adjust` 通过 `table_fee_adjust_id` 关联,提供调整类型、申请人、操作员等扩展信息。
|
与主表 `dwd_table_fee_adjust` 通过 `table_fee_adjust_id` 关联,提供调整类型、申请人、操作员等扩展信息。
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -41,4 +40,17 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:ledger_start_time, last_use_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_table_fee_log_ex
|
||||||
|
ORDER BY ledger_start_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
与主表 `dwd_table_fee_log` 通过 `table_fee_log_id` 关联,提供操作员和时间相关的扩展信息。
|
与主表 `dwd_table_fee_log` 通过 `table_fee_log_id` 关联,提供操作员和时间相关的扩展信息。
|
||||||
|
|||||||
@@ -7,22 +7,21 @@
|
|||||||
## 概述
|
## 概述
|
||||||
|
|
||||||
`billiards_dwd` 是台球门店数据仓库的明细层(DWD),包含维度表(DIM)和事实表(DWD)。本 Schema 基于 SCD2 缓慢变化维度设计,支持历史数据追溯。
|
`billiards_dwd` 是台球门店数据仓库的明细层(DWD),包含维度表(DIM)和事实表(DWD)。本 Schema 基于 SCD2 缓慢变化维度设计,支持历史数据追溯。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 维度表 (Dimension Tables)
|
## 维度表 (Dimension Tables)
|
||||||
|
|
||||||
| 序号 | 表名 | 说明 | 主键 | 扩展表 | 文档链接 |
|
| 序号 | 表名 | 说明 | 主键 | 扩展表 | 文档链接 |
|
||||||
|------|------|------|------|--------|----------|
|
|------|------|------|------|--------|----------|
|
||||||
| 1 | dim_assistant | 助教信息 | assistant_id | dim_assistant_ex | [主表](BD_manual_dim_assistant.md) / [扩展表](BD_manual_dim_assistant_ex.md) |
|
| 1 | dim_assistant | 助教信息 | assistant_id, scd2_start_time | dim_assistant_ex | [主表](BD_manual_dim_assistant.md) / [扩展表](BD_manual_dim_assistant_ex.md) |
|
||||||
| 2 | dim_goods_category | 商品分类 | goods_category_id | 无 | [主表](BD_manual_dim_goods_category.md) |
|
| 2 | dim_goods_category | 商品分类 | category_id, scd2_start_time | 无 | [主表](BD_manual_dim_goods_category.md) |
|
||||||
| 3 | dim_groupbuy_package | 团购套餐 | groupbuy_package_id | dim_groupbuy_package_ex | [主表](BD_manual_dim_groupbuy_package.md) / [扩展表](BD_manual_dim_groupbuy_package_ex.md) |
|
| 3 | dim_groupbuy_package | 团购套餐 | groupbuy_package_id, scd2_start_time | dim_groupbuy_package_ex | [主表](BD_manual_dim_groupbuy_package.md) / [扩展表](BD_manual_dim_groupbuy_package_ex.md) |
|
||||||
| 4 | dim_member | 会员信息 | member_id | dim_member_ex | [主表](BD_manual_dim_member.md) / [扩展表](BD_manual_dim_member_ex.md) |
|
| 4 | dim_member | 会员信息 | member_id, scd2_start_time | dim_member_ex | [主表](BD_manual_dim_member.md) / [扩展表](BD_manual_dim_member_ex.md) |
|
||||||
| 5 | dim_member_card_account | 会员卡账户 | member_card_account_id | dim_member_card_account_ex | [主表](BD_manual_dim_member_card_account.md) / [扩展表](BD_manual_dim_member_card_account_ex.md) |
|
| 5 | dim_member_card_account | 会员卡账户 | member_card_id, scd2_start_time | dim_member_card_account_ex | [主表](BD_manual_dim_member_card_account.md) / [扩展表](BD_manual_dim_member_card_account_ex.md) |
|
||||||
| 6 | dim_site | 门店信息 | site_id | dim_site_ex | [主表](BD_manual_dim_site.md) / [扩展表](BD_manual_dim_site_ex.md) |
|
| 6 | dim_site | 门店信息 | site_id, scd2_start_time | dim_site_ex | [主表](BD_manual_dim_site.md) / [扩展表](BD_manual_dim_site_ex.md) |
|
||||||
| 7 | dim_store_goods | 门店商品 | store_goods_id | dim_store_goods_ex | [主表](BD_manual_dim_store_goods.md) / [扩展表](BD_manual_dim_store_goods_ex.md) |
|
| 7 | dim_store_goods | 门店商品 | site_goods_id, scd2_start_time | dim_store_goods_ex | [主表](BD_manual_dim_store_goods.md) / [扩展表](BD_manual_dim_store_goods_ex.md) |
|
||||||
| 8 | dim_table | 台桌信息 | table_id | dim_table_ex | [主表](BD_manual_dim_table.md) / [扩展表](BD_manual_dim_table_ex.md) |
|
| 8 | dim_table | 台桌信息 | table_id, scd2_start_time | dim_table_ex | [主表](BD_manual_dim_table.md) / [扩展表](BD_manual_dim_table_ex.md) |
|
||||||
| 9 | dim_tenant_goods | 租户商品 | tenant_goods_id | dim_tenant_goods_ex | [主表](BD_manual_dim_tenant_goods.md) / [扩展表](BD_manual_dim_tenant_goods_ex.md) |
|
| 9 | dim_tenant_goods | 租户商品 | tenant_goods_id, scd2_start_time | dim_tenant_goods_ex | [主表](BD_manual_dim_tenant_goods.md) / [扩展表](BD_manual_dim_tenant_goods_ex.md) |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -30,7 +29,7 @@
|
|||||||
|
|
||||||
| 序号 | 表名 | 说明 | 主键 | 扩展表 | 文档链接 |
|
| 序号 | 表名 | 说明 | 主键 | 扩展表 | 文档链接 |
|
||||||
|------|------|------|------|--------|----------|
|
|------|------|------|------|--------|----------|
|
||||||
| 1 | dwd_assistant_service_log | 助教服务流水 | assistant_service_log_id | dwd_assistant_service_log_ex | [主表](BD_manual_dwd_assistant_service_log.md) / [扩展表](BD_manual_dwd_assistant_service_log_ex.md) |
|
| 1 | dwd_assistant_service_log | 助教服务流水 | assistant_service_id | dwd_assistant_service_log_ex | [主表](BD_manual_dwd_assistant_service_log.md) / [扩展表](BD_manual_dwd_assistant_service_log_ex.md) |
|
||||||
| 2 | dwd_assistant_trash_event | 助教服务作废 | assistant_trash_event_id | dwd_assistant_trash_event_ex | [主表](BD_manual_dwd_assistant_trash_event.md) / [扩展表](BD_manual_dwd_assistant_trash_event_ex.md) |
|
| 2 | dwd_assistant_trash_event | 助教服务作废 | assistant_trash_event_id | dwd_assistant_trash_event_ex | [主表](BD_manual_dwd_assistant_trash_event.md) / [扩展表](BD_manual_dwd_assistant_trash_event_ex.md) |
|
||||||
| 3 | dwd_groupbuy_redemption | 团购券核销 | redemption_id | dwd_groupbuy_redemption_ex | [主表](BD_manual_dwd_groupbuy_redemption.md) / [扩展表](BD_manual_dwd_groupbuy_redemption_ex.md) |
|
| 3 | dwd_groupbuy_redemption | 团购券核销 | redemption_id | dwd_groupbuy_redemption_ex | [主表](BD_manual_dwd_groupbuy_redemption.md) / [扩展表](BD_manual_dwd_groupbuy_redemption_ex.md) |
|
||||||
| 4 | dwd_member_balance_change | 会员余额变动 | balance_change_id | dwd_member_balance_change_ex | [主表](BD_manual_dwd_member_balance_change.md) / [扩展表](BD_manual_dwd_member_balance_change_ex.md) |
|
| 4 | dwd_member_balance_change | 会员余额变动 | balance_change_id | dwd_member_balance_change_ex | [主表](BD_manual_dwd_member_balance_change.md) / [扩展表](BD_manual_dwd_member_balance_change_ex.md) |
|
||||||
@@ -38,7 +37,7 @@
|
|||||||
| 6 | dwd_platform_coupon_redemption | 平台券核销 | platform_coupon_redemption_id | dwd_platform_coupon_redemption_ex | [主表](BD_manual_dwd_platform_coupon_redemption.md) / [扩展表](BD_manual_dwd_platform_coupon_redemption_ex.md) |
|
| 6 | dwd_platform_coupon_redemption | 平台券核销 | platform_coupon_redemption_id | dwd_platform_coupon_redemption_ex | [主表](BD_manual_dwd_platform_coupon_redemption.md) / [扩展表](BD_manual_dwd_platform_coupon_redemption_ex.md) |
|
||||||
| 7 | dwd_recharge_order | 充值订单 | recharge_order_id | dwd_recharge_order_ex | [主表](BD_manual_dwd_recharge_order.md) / [扩展表](BD_manual_dwd_recharge_order_ex.md) |
|
| 7 | dwd_recharge_order | 充值订单 | recharge_order_id | dwd_recharge_order_ex | [主表](BD_manual_dwd_recharge_order.md) / [扩展表](BD_manual_dwd_recharge_order_ex.md) |
|
||||||
| 8 | dwd_refund | 退款流水 | refund_id | dwd_refund_ex | [主表](BD_manual_dwd_refund.md) / [扩展表](BD_manual_dwd_refund_ex.md) |
|
| 8 | dwd_refund | 退款流水 | refund_id | dwd_refund_ex | [主表](BD_manual_dwd_refund.md) / [扩展表](BD_manual_dwd_refund_ex.md) |
|
||||||
| 9 | dwd_settlement_head | 结账单 | settlement_head_id | dwd_settlement_head_ex | [主表](BD_manual_dwd_settlement_head.md) / [扩展表](BD_manual_dwd_settlement_head_ex.md) |
|
| 9 | dwd_settlement_head | 结账单 | order_settle_id | dwd_settlement_head_ex | [主表](BD_manual_dwd_settlement_head.md) / [扩展表](BD_manual_dwd_settlement_head_ex.md) |
|
||||||
| 10 | dwd_store_goods_sale | 商品销售流水 | store_goods_sale_id | dwd_store_goods_sale_ex | [主表](BD_manual_dwd_store_goods_sale.md) / [扩展表](BD_manual_dwd_store_goods_sale_ex.md) |
|
| 10 | dwd_store_goods_sale | 商品销售流水 | store_goods_sale_id | dwd_store_goods_sale_ex | [主表](BD_manual_dwd_store_goods_sale.md) / [扩展表](BD_manual_dwd_store_goods_sale_ex.md) |
|
||||||
| 11 | dwd_table_fee_adjust | 台费调整 | table_fee_adjust_id | dwd_table_fee_adjust_ex | [主表](BD_manual_dwd_table_fee_adjust.md) / [扩展表](BD_manual_dwd_table_fee_adjust_ex.md) |
|
| 11 | dwd_table_fee_adjust | 台费调整 | table_fee_adjust_id | dwd_table_fee_adjust_ex | [主表](BD_manual_dwd_table_fee_adjust.md) / [扩展表](BD_manual_dwd_table_fee_adjust_ex.md) |
|
||||||
| 12 | dwd_table_fee_log | 台费计费流水 | table_fee_log_id | dwd_table_fee_log_ex | [主表](BD_manual_dwd_table_fee_log.md) / [扩展表](BD_manual_dwd_table_fee_log_ex.md) |
|
| 12 | dwd_table_fee_log | 台费计费流水 | table_fee_log_id | dwd_table_fee_log_ex | [主表](BD_manual_dwd_table_fee_log.md) / [扩展表](BD_manual_dwd_table_fee_log_ex.md) |
|
||||||
@@ -58,6 +57,18 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## 最新值获取
|
||||||
|
|
||||||
|
- 维度表(SCD2):使用 scd2_is_current = 1 获取当前版本。
|
||||||
|
- 事实表:无 SCD2 版本字段,按业务时间字段倒序获取最新记录(如 pay_time / create_time / update_time 等)。
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 维度表取当前版本
|
||||||
|
SELECT * FROM billiards_dwd.dim_member WHERE scd2_is_current = 1;
|
||||||
|
-- 事实表取最新记录(示例:按 pay_time)
|
||||||
|
SELECT * FROM billiards_dwd.dwd_payment ORDER BY pay_time DESC NULLS LAST LIMIT 1;
|
||||||
|
```
|
||||||
|
|
||||||
## 常见 ID 关联说明
|
## 常见 ID 关联说明
|
||||||
|
|
||||||
| ID 字段 | 关联表 | 说明 |
|
| ID 字段 | 关联表 | 说明 |
|
||||||
@@ -79,6 +90,7 @@
|
|||||||
### 主表 + 扩展表模式
|
### 主表 + 扩展表模式
|
||||||
|
|
||||||
大部分表采用"主表 + 扩展表"的设计模式:
|
大部分表采用"主表 + 扩展表"的设计模式:
|
||||||
|
|
||||||
- **主表**:包含核心业务字段(如金额、状态、关键 ID)
|
- **主表**:包含核心业务字段(如金额、状态、关键 ID)
|
||||||
- **扩展表**:包含附属信息(如操作员、门店名称快照、各类详细字段)
|
- **扩展表**:包含附属信息(如操作员、门店名称快照、各类详细字段)
|
||||||
- 两表通过主键一对一关联
|
- 两表通过主键一对一关联
|
||||||
@@ -86,6 +98,7 @@
|
|||||||
### 枚举值说明
|
### 枚举值说明
|
||||||
|
|
||||||
文档中的枚举值格式为 `值(数量)=含义`,例如:
|
文档中的枚举值格式为 `值(数量)=含义`,例如:
|
||||||
|
|
||||||
- `1(100)=有效` 表示值为 1 的记录有 100 条,含义为"有效"
|
- `1(100)=有效` 表示值为 1 的记录有 100 条,含义为"有效"
|
||||||
- **[待确认]** 表示该值的含义无法从数据中确定
|
- **[待确认]** 表示该值的含义无法从数据中确定
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -40,6 +39,7 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
使用 scd2_is_current = 1 获取当前版本。
|
||||||
```sql
|
```sql
|
||||||
-- 查询当前在职助教
|
-- 查询当前在职助教
|
||||||
SELECT * FROM billiards_dwd.dim_assistant
|
SELECT * FROM billiards_dwd.dim_assistant
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -40,12 +39,10 @@
|
|||||||
```
|
```
|
||||||
槟榔(一级)
|
槟榔(一级)
|
||||||
├── 槟榔(二级)
|
├── 槟榔(二级)
|
||||||
|
|
||||||
器材(一级)
|
器材(一级)
|
||||||
├── 皮头
|
├── 皮头
|
||||||
├── 球杆
|
├── 球杆
|
||||||
├── 其他
|
├── 其他
|
||||||
|
|
||||||
酒水(一级)
|
酒水(一级)
|
||||||
├── 饮料
|
├── 饮料
|
||||||
├── 酒水
|
├── 酒水
|
||||||
@@ -57,11 +54,25 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_goods_category
|
||||||
|
WHERE category_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询一级分类
|
-- 查询一级分类
|
||||||
SELECT * FROM billiards_dwd.dim_goods_category
|
SELECT * FROM billiards_dwd.dim_goods_category
|
||||||
WHERE scd2_is_current = 1 AND parent_category_id = 0;
|
WHERE scd2_is_current = 1 AND parent_category_id = 0;
|
||||||
|
|
||||||
-- 查询某一级分类下的二级分类
|
-- 查询某一级分类下的二级分类
|
||||||
SELECT * FROM billiards_dwd.dim_goods_category
|
SELECT * FROM billiards_dwd.dim_goods_category
|
||||||
WHERE scd2_is_current = 1 AND parent_category_id = <一级分类ID>;
|
WHERE scd2_is_current = 1 AND parent_category_id = <一级分类ID>;
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -41,9 +40,23 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_groupbuy_package
|
||||||
|
WHERE groupbuy_package_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询当前启用的套餐
|
-- 查询当前启用的套餐
|
||||||
SELECT * FROM billiards_dwd.dim_groupbuy_package
|
SELECT * FROM billiards_dwd.dim_groupbuy_package
|
||||||
WHERE scd2_is_current = 1 AND is_delete = 0 AND is_enabled = 1;
|
WHERE scd2_is_current = 1 AND is_delete = 0 AND is_enabled = 1;
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -32,15 +32,27 @@
|
|||||||
| 13 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
| 13 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||||
| 14 | scd2_version | INTEGER | YES | | 版本号 |
|
| 14 | scd2_version | INTEGER | YES | | 版本号 |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_member
|
||||||
|
WHERE member_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询当前有效会员
|
-- 查询当前有效会员
|
||||||
SELECT * FROM billiards_dwd.dim_member
|
SELECT * FROM billiards_dwd.dim_member
|
||||||
WHERE scd2_is_current = 1;
|
WHERE scd2_is_current = 1;
|
||||||
|
|
||||||
-- 按卡类型统计会员数
|
-- 按卡类型统计会员数
|
||||||
SELECT member_card_grade_name, COUNT(*)
|
SELECT member_card_grade_name, COUNT(*)
|
||||||
FROM billiards_dwd.dim_member
|
FROM billiards_dwd.dim_member
|
||||||
|
|||||||
@@ -50,9 +50,23 @@
|
|||||||
| 2793306611533637 | 月卡 | 充值获得,时长卡,仅可抵扣台费 |
|
| 2793306611533637 | 月卡 | 充值获得,时长卡,仅可抵扣台费 |
|
||||||
| 2791987095408517 | 年卡 | 充值获得,时长卡,仅可抵扣台费 |
|
| 2791987095408517 | 年卡 | 充值获得,时长卡,仅可抵扣台费 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_member_card_account
|
||||||
|
WHERE member_card_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询有效的储值卡
|
-- 查询有效的储值卡
|
||||||
SELECT * FROM billiards_dwd.dim_member_card_account
|
SELECT * FROM billiards_dwd.dim_member_card_account
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -44,6 +43,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_site
|
||||||
|
WHERE site_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询当前有效门店
|
-- 查询当前有效门店
|
||||||
SELECT * FROM billiards_dwd.dim_site
|
SELECT * FROM billiards_dwd.dim_site
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -54,6 +53,21 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_store_goods
|
||||||
|
WHERE site_goods_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询当前上架商品
|
-- 查询当前上架商品
|
||||||
SELECT * FROM billiards_dwd.dim_store_goods
|
SELECT * FROM billiards_dwd.dim_store_goods
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -52,11 +51,25 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_table
|
||||||
|
WHERE table_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询当前有效台桌
|
-- 查询当前有效台桌
|
||||||
SELECT * FROM billiards_dwd.dim_table
|
SELECT * FROM billiards_dwd.dim_table
|
||||||
WHERE scd2_is_current = 1;
|
WHERE scd2_is_current = 1;
|
||||||
|
|
||||||
-- 按台区统计台桌数
|
-- 按台区统计台桌数
|
||||||
SELECT site_table_area_name, COUNT(*)
|
SELECT site_table_area_name, COUNT(*)
|
||||||
FROM billiards_dwd.dim_table
|
FROM billiards_dwd.dim_table
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -37,9 +36,23 @@
|
|||||||
| 17 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
| 17 | scd2_is_current | INTEGER | YES | | 当前版本标记 |
|
||||||
| 18 | scd2_version | INTEGER | YES | | 版本号 |
|
| 18 | scd2_version | INTEGER | YES | | 版本号 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为 SCD2 维度表,版本字段:scd2_start_time / scd2_end_time / scd2_is_current / scd2_version。
|
||||||
|
|
||||||
|
- 最新版本:scd2_is_current = 1
|
||||||
|
- 按业务主键取最新:按 scd2_start_time 倒序
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取某业务主键的最新版本
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dim_tenant_goods
|
||||||
|
WHERE tenant_goods_id = <value>
|
||||||
|
ORDER BY scd2_start_time DESC
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 查询当前有效的租户商品
|
-- 查询当前有效的租户商品
|
||||||
SELECT * FROM billiards_dwd.dim_tenant_goods
|
SELECT * FROM billiards_dwd.dim_tenant_goods
|
||||||
|
|||||||
@@ -50,9 +50,21 @@
|
|||||||
| 31 | last_use_time | TIMESTAMPTZ | YES | | 服务结束时间 |
|
| 31 | last_use_time | TIMESTAMPTZ | YES | | 服务结束时间 |
|
||||||
| 32 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
| 32 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:create_time, start_use_time, last_use_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_assistant_service_log
|
||||||
|
ORDER BY create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 统计助教服务收入
|
-- 统计助教服务收入
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -28,9 +28,21 @@
|
|||||||
| 9 | trash_reason | VARCHAR | YES | | 作废原因(当前数据全为 NULL) |
|
| 9 | trash_reason | VARCHAR | YES | | 作废原因(当前数据全为 NULL) |
|
||||||
| 10 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
| 10 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_assistant_trash_event
|
||||||
|
ORDER BY create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 助教作废金额统计
|
-- 助教作废金额统计
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -44,6 +43,19 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_groupbuy_redemption
|
||||||
|
ORDER BY create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 各套餐核销统计
|
-- 各套餐核销统计
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -58,6 +57,19 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:change_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_member_balance_change
|
||||||
|
ORDER BY change_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 会员消费总额排行
|
-- 会员消费总额排行
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -30,10 +29,21 @@
|
|||||||
| 10 | pay_time | TIMESTAMPTZ | YES | | 支付时间 |
|
| 10 | pay_time | TIMESTAMPTZ | YES | | 支付时间 |
|
||||||
| 11 | pay_date | DATE | YES | | 支付日期 |
|
| 11 | pay_date | DATE | YES | | 支付日期 |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:create_time, pay_time, pay_date
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_payment
|
||||||
|
ORDER BY pay_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 每日支付金额统计
|
-- 每日支付金额统计
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -40,6 +40,19 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:coupon_free_time, create_time, consume_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_platform_coupon_redemption
|
||||||
|
ORDER BY create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 各渠道核销统计
|
-- 各渠道核销统计
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -38,9 +37,21 @@
|
|||||||
| 18 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
| 18 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||||
| 19 | pay_time | TIMESTAMPTZ | YES | | 支付时间 |
|
| 19 | pay_time | TIMESTAMPTZ | YES | | 支付时间 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:create_time, pay_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_recharge_order
|
||||||
|
ORDER BY pay_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 充值总额统计(不含撤销)
|
-- 充值总额统计(不含撤销)
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -31,9 +30,21 @@
|
|||||||
| 11 | member_id | BIGINT | YES | | 会员 ID(当前数据全为 0) |
|
| 11 | member_id | BIGINT | YES | | 会员 ID(当前数据全为 0) |
|
||||||
| 12 | member_card_id | BIGINT | YES | | 会员卡 ID(当前数据全为 0) |
|
| 12 | member_card_id | BIGINT | YES | | 会员卡 ID(当前数据全为 0) |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:pay_time, create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_refund
|
||||||
|
ORDER BY pay_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 退款统计
|
-- 退款统计
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -51,9 +50,21 @@
|
|||||||
| 31 | rounding_amount | NUMERIC(18,2) | YES | | 抹零金额 |
|
| 31 | rounding_amount | NUMERIC(18,2) | YES | | 抹零金额 |
|
||||||
| 32 | point_amount | NUMERIC(18,2) | YES | | 积分抵扣等值金额 |
|
| 32 | point_amount | NUMERIC(18,2) | YES | | 积分抵扣等值金额 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:create_time, pay_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_settlement_head
|
||||||
|
ORDER BY pay_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 每日营收统计
|
-- 每日营收统计
|
||||||
SELECT
|
SELECT
|
||||||
@@ -64,7 +75,6 @@ SELECT
|
|||||||
FROM billiards_dwd.dwd_settlement_head
|
FROM billiards_dwd.dwd_settlement_head
|
||||||
GROUP BY DATE(pay_time)
|
GROUP BY DATE(pay_time)
|
||||||
ORDER BY pay_date DESC;
|
ORDER BY pay_date DESC;
|
||||||
|
|
||||||
-- 台费 vs 商品 vs 助教收入
|
-- 台费 vs 商品 vs 助教收入
|
||||||
SELECT
|
SELECT
|
||||||
SUM(table_charge_money) AS table_revenue,
|
SUM(table_charge_money) AS table_revenue,
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -42,9 +41,21 @@
|
|||||||
| 22 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
| 22 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||||
| 23 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
| 23 | create_time | TIMESTAMPTZ | YES | | 创建时间 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_store_goods_sale
|
||||||
|
ORDER BY create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 热销商品排行
|
-- 热销商品排行
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -33,6 +32,19 @@
|
|||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:adjust_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_table_fee_adjust
|
||||||
|
ORDER BY adjust_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 台费调整统计
|
-- 台费调整统计
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
> 生成时间:2026-01-28
|
> 生成时间:2026-01-28
|
||||||
|
|
||||||
|
|
||||||
## 表信息
|
## 表信息
|
||||||
|
|
||||||
| 属性 | 值 |
|
| 属性 | 值 |
|
||||||
@@ -46,9 +45,21 @@
|
|||||||
| 26 | is_single_order | INTEGER | YES | | 是否独立订单。**枚举值**: 0=合并订单, 1=独立订单 |
|
| 26 | is_single_order | INTEGER | YES | | 是否独立订单。**枚举值**: 0=合并订单, 1=独立订单 |
|
||||||
| 27 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
| 27 | is_delete | INTEGER | YES | | 删除标记。**枚举值**: 0=未删除 |
|
||||||
|
|
||||||
|
|
||||||
## 使用说明
|
## 使用说明
|
||||||
|
|
||||||
|
**版本与最新值**
|
||||||
|
本表为事实表,无 SCD2 版本字段。
|
||||||
|
|
||||||
|
- 可用时间字段:start_use_time, ledger_end_time, create_time
|
||||||
|
|
||||||
|
```sql
|
||||||
|
-- 取最新一条(按时间字段倒序)
|
||||||
|
SELECT *
|
||||||
|
FROM billiards_dwd.dwd_table_fee_log
|
||||||
|
ORDER BY create_time DESC NULLS LAST
|
||||||
|
LIMIT 1;
|
||||||
|
```
|
||||||
|
**使用示例**
|
||||||
```sql
|
```sql
|
||||||
-- 各台区台费收入统计
|
-- 各台区台费收入统计
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -163,7 +163,7 @@ class TaskPanel(QWidget):
|
|||||||
sync_layout.setSpacing(8)
|
sync_layout.setSpacing(8)
|
||||||
|
|
||||||
# 说明
|
# 说明
|
||||||
sync_desc = QLabel("从 API 抓取最新数据到 ODS,然后装载到 DWD。适用于日常增量更新。")
|
sync_desc = QLabel("从 API 抓取最新数据到 ODS,然后装载到 DWD。适用于日常增量更新、数据修复和历史补全。")
|
||||||
sync_desc.setProperty("subheading", True)
|
sync_desc.setProperty("subheading", True)
|
||||||
sync_desc.setWordWrap(True)
|
sync_desc.setWordWrap(True)
|
||||||
sync_layout.addWidget(sync_desc)
|
sync_layout.addWidget(sync_desc)
|
||||||
@@ -202,7 +202,7 @@ class TaskPanel(QWidget):
|
|||||||
show_dimensions=True,
|
show_dimensions=True,
|
||||||
show_facts=True,
|
show_facts=True,
|
||||||
default_select_facts=True,
|
default_select_facts=True,
|
||||||
default_select_dimensions=False,
|
default_select_dimensions=True, # 默认包含维度表
|
||||||
compact=True,
|
compact=True,
|
||||||
max_height=200,
|
max_height=200,
|
||||||
)
|
)
|
||||||
@@ -242,7 +242,7 @@ class TaskPanel(QWidget):
|
|||||||
reload_layout.setSpacing(8)
|
reload_layout.setSpacing(8)
|
||||||
|
|
||||||
# 说明
|
# 说明
|
||||||
reload_desc = QLabel("指定时间窗口,重新抓取 ODS 数据并装载到 DWD。适用于数据修复或历史回补。")
|
reload_desc = QLabel("指定精确时间窗口,重新抓取 ODS 数据并装载到 DWD。适用于大范围历史数据重刷、跨月补跑等场景。")
|
||||||
reload_desc.setProperty("subheading", True)
|
reload_desc.setProperty("subheading", True)
|
||||||
reload_desc.setWordWrap(True)
|
reload_desc.setWordWrap(True)
|
||||||
reload_layout.addWidget(reload_desc)
|
reload_layout.addWidget(reload_desc)
|
||||||
|
|||||||
@@ -189,114 +189,60 @@ class TaskWorker(QThread):
|
|||||||
|
|
||||||
# 解析 DWD 装载统计
|
# 解析 DWD 装载统计
|
||||||
if 'tables' in stats:
|
if 'tables' in stats:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
total_dim_inserted = 0
|
total_dim_inserted = 0
|
||||||
|
|
||||||
total_dim_updated = 0
|
total_dim_updated = 0
|
||||||
|
|
||||||
total_fact_inserted = 0
|
total_fact_inserted = 0
|
||||||
|
|
||||||
total_fact_updated = 0
|
total_fact_updated = 0
|
||||||
|
|
||||||
dim_tables = [] # ?????
|
dim_tables = [] # 维表明细
|
||||||
|
fact_tables = [] # 事实表明细
|
||||||
fact_tables = [] # ?????
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
for tbl in stats['tables']:
|
for tbl in stats['tables']:
|
||||||
|
|
||||||
table_name = tbl.get('table', '').replace('billiards_dwd.', '')
|
table_name = tbl.get('table', '').replace('billiards_dwd.', '')
|
||||||
|
|
||||||
mode = tbl.get('mode', '')
|
mode = tbl.get('mode', '')
|
||||||
|
|
||||||
processed = int(tbl.get('processed', 0) or 0)
|
processed = int(tbl.get('processed', 0) or 0)
|
||||||
|
|
||||||
inserted = int(tbl.get('inserted', 0) or 0)
|
inserted = int(tbl.get('inserted', 0) or 0)
|
||||||
|
|
||||||
updated = int(tbl.get('updated', 0) or 0)
|
updated = int(tbl.get('updated', 0) or 0)
|
||||||
|
|
||||||
has_new_counts = ('inserted' in tbl) or ('updated' in tbl)
|
has_new_counts = ('inserted' in tbl) or ('updated' in tbl)
|
||||||
|
|
||||||
|
# 忽略 _ex 扩展表
|
||||||
|
|
||||||
# ?? _ex ?????????
|
|
||||||
|
|
||||||
if table_name.endswith('_ex'):
|
if table_name.endswith('_ex'):
|
||||||
|
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
is_dim = table_name.startswith('dim_') or mode == 'SCD2'
|
is_dim = table_name.startswith('dim_') or mode == 'SCD2'
|
||||||
|
|
||||||
if is_dim:
|
if is_dim:
|
||||||
|
|
||||||
if has_new_counts:
|
if has_new_counts:
|
||||||
|
|
||||||
total_dim_inserted += inserted
|
total_dim_inserted += inserted
|
||||||
|
|
||||||
total_dim_updated += updated
|
total_dim_updated += updated
|
||||||
|
|
||||||
if inserted or updated:
|
if inserted or updated:
|
||||||
|
|
||||||
dim_tables.append(f"{table_name}: +{inserted}, ~{updated}")
|
dim_tables.append(f"{table_name}: +{inserted}, ~{updated}")
|
||||||
|
|
||||||
elif processed > 0:
|
elif processed > 0:
|
||||||
|
|
||||||
total_dim_updated += processed
|
total_dim_updated += processed
|
||||||
|
|
||||||
dim_tables.append(f"{table_name}: {processed}")
|
dim_tables.append(f"{table_name}: {processed}")
|
||||||
|
|
||||||
else:
|
else:
|
||||||
|
|
||||||
if has_new_counts:
|
if has_new_counts:
|
||||||
|
|
||||||
total_fact_inserted += inserted
|
total_fact_inserted += inserted
|
||||||
|
|
||||||
total_fact_updated += updated
|
total_fact_updated += updated
|
||||||
|
|
||||||
if inserted or updated:
|
if inserted or updated:
|
||||||
|
|
||||||
fact_tables.append(f"{table_name}: +{inserted}, ~{updated}")
|
fact_tables.append(f"{table_name}: +{inserted}, ~{updated}")
|
||||||
|
|
||||||
elif processed > 0 or inserted > 0:
|
elif processed > 0 or inserted > 0:
|
||||||
|
|
||||||
total_fact_inserted += inserted
|
total_fact_inserted += inserted
|
||||||
|
|
||||||
if inserted > 0:
|
if inserted > 0:
|
||||||
|
|
||||||
fact_tables.append(f"{table_name}: +{inserted}")
|
fact_tables.append(f"{table_name}: +{inserted}")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (total_dim_inserted or total_dim_updated or total_fact_inserted or total_fact_updated):
|
if (total_dim_inserted or total_dim_updated or total_fact_inserted or total_fact_updated):
|
||||||
|
|
||||||
dwd_stats.append(
|
dwd_stats.append(
|
||||||
|
f"维表新增: {total_dim_inserted}条, 维表更新: {total_dim_updated}条, "
|
||||||
f"????: {total_dim_inserted}?, ????: {total_dim_updated}?, "
|
f"事实表新增: {total_fact_inserted}条, 事实表更新: {total_fact_updated}条"
|
||||||
|
|
||||||
f"????: {total_fact_inserted}?, ????: {total_fact_updated}?"
|
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# 维表明细
|
||||||
|
|
||||||
# ???????
|
|
||||||
|
|
||||||
if dim_tables:
|
if dim_tables:
|
||||||
|
dwd_stats.append(" 维表: " + ", ".join(dim_tables))
|
||||||
|
|
||||||
dwd_stats.append(" ???: " + ", ".join(dim_tables))
|
# 事实表明细
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# ???????
|
|
||||||
|
|
||||||
if fact_tables:
|
if fact_tables:
|
||||||
|
dwd_stats.append(" 事实表: " + ", ".join(fact_tables))
|
||||||
dwd_stats.append(" ???: " + ", ".join(fact_tables))
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -306,7 +306,8 @@ class ETLScheduler:
|
|||||||
|
|
||||||
def _build_fetch_dir(self, task_code: str, run_id: int) -> Path:
|
def _build_fetch_dir(self, task_code: str, run_id: int) -> Path:
|
||||||
ts = datetime.now(self.tz).strftime("%Y%m%d-%H%M%S")
|
ts = datetime.now(self.tz).strftime("%Y%m%d-%H%M%S")
|
||||||
return Path(self.fetch_root) / f"{task_code.upper()}-{run_id}-{ts}"
|
task_code = str(task_code or "").upper()
|
||||||
|
return Path(self.fetch_root) / task_code / f"{task_code}-{run_id}-{ts}"
|
||||||
|
|
||||||
def _resolve_ingest_source(self, fetch_dir: Path, fetch_stats: dict | None) -> Path:
|
def _resolve_ingest_source(self, fetch_dir: Path, fetch_stats: dict | None) -> Path:
|
||||||
if fetch_stats and fetch_dir.exists():
|
if fetch_stats and fetch_dir.exists():
|
||||||
|
|||||||
71
etl_billiards/scheduled_tasks.json
Normal file
71
etl_billiards/scheduled_tasks.json
Normal file
File diff suppressed because one or more lines are too long
302
tmp/1.json
Normal file
302
tmp/1.json
Normal file
@@ -0,0 +1,302 @@
|
|||||||
|
{
|
||||||
|
"tables": [
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_site",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 1,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_site_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 1,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_table",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 74,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 74
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_table_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 74,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 1,
|
||||||
|
"skipped": 73
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_assistant",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 69,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 69
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_assistant_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 69,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 69
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_member",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 556,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 556
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_member_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 556,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 556
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_member_card_account",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 945,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 945
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_member_card_account_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 945,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 945
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_tenant_goods",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 173,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 173
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_tenant_goods_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 173,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 173
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_store_goods",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 172,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 1,
|
||||||
|
"skipped": 171
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_store_goods_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 172,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 1,
|
||||||
|
"skipped": 171
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_goods_category",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 26,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 26
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_groupbuy_package",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 34,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 34
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dim_groupbuy_package_ex",
|
||||||
|
"mode": "SCD2",
|
||||||
|
"processed": 34,
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"skipped": 34
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_settlement_head",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 1,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_settlement_head_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 1,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_table_fee_log",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_table_fee_log_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_table_fee_adjust",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_table_fee_adjust_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_store_goods_sale",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_store_goods_sale_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_assistant_service_log",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_assistant_service_log_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_assistant_trash_event",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_assistant_trash_event_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_member_balance_change",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_member_balance_change_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_groupbuy_redemption",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_groupbuy_redemption_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_platform_coupon_redemption",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_platform_coupon_redemption_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_recharge_order",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_recharge_order_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_payment",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 1,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_refund",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"table": "billiards_dwd.dwd_refund_ex",
|
||||||
|
"mode": "INCREMENT",
|
||||||
|
"inserted": 0,
|
||||||
|
"updated": 0,
|
||||||
|
"processed": 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"errors": []
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user