首页 > 解决方案 > 通用交易的ETL转换为Bet and Win

问题描述

我的数据库中有一个问题,如果它是赌注或获胜,则了解通用交易。目前,它包含在一个事务中。我有一个可以提供帮助的附加字段 -> 下注金额,它是恒定的。

表格如下所示:

在此处输入图像描述

基本上,您在第一笔交易中在金额字段中看到的是客户开始的金额。每当下一笔交易的金额与其上一笔交易相比较高时,则特定投注也获得了胜利,如果其较低则仅是投注。

我需要创建一个 ETL 流程来创建这个表:

在此处输入图像描述

希望您能帮助我编写高效的 SQL Server 代码以创建请求的表。

提前致谢,

标签: sql-serverssisetl

解决方案


在您的 OLEDB 源中使用以下脚本作为 SQL 命令

SELECT TransactionID, DateTime, GameID, CASE WHEN ISNULL(Amount, '') = '' THEN 
'StartGame' WHEN Amount > BetAmount THEN 'win' ELSE 'bet' END AS 
TransactionTypeID, BetAmount, Amount
FROM [your table name]

推荐阅读