P15GEN2\59518
2025-10-10 9f6890646993d16260d4201d613c092132856127
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?xml version="1.0" encoding="UTF-8" ?>
 
<sqls>
    <dataSpace name="agg">
 
        <sql name="initLines">
            insert into @{tablename} (@{toFields})
            select @{fromFields} from @{source_tablename} 
            where @{filter}
        </sql>
 
        <sql name="getDimensionData">
            select @{fields} from @{tablename} 
            where @{filter}
            @{groupby}
        </sql>
        
        <sql name="getGroupData">
            select @{fields} from @{tablename} 
            @{groupby}
            where @{filter}
        </sql>
 
        <sql name="updateAggData">
            update @{tablename} a
            left join (select @{fields} from @{source_tablename} where @{dataFilter} @{groupby} ) a1 on @{join_segment}
            set @{update_segment}
            where @{filter}
        </sql>
 
        <sql name="updateAchieveData">
            update @{tablename} a
            set @{update_segment}
            where @{filter}
        </sql>
 
        <sql name="updateAggDataByAgg">
            update @{tablename} a
            left join (select * from @{tablename} where @{join_filter}) a1 on @{join_segment}
            set @{update_segment}
            where @{filter}
        </sql>
 
        <sql name="updateContributionDataByAgg">
            update @{tablename} a
            left join (select @{fields} from @{tablename} @{groupby}) a1 on @{join_segment}
            set @{update_segment}
            where @{filter}
        </sql>
 
        <sql name="updateRankData">
            update @{tablename} a
            left join (
                select id,
                if(@groupField = @{groupFieldsConcat}, @row_number := @row_number + 1, @row_number := 1) rank_number,
                    @groupField := @{groupFieldsConcat} AS  groupField 
                FROM @{tablename} ,
                (select @row_number := 0, @groupField := null) as t
                where 1=1
                @{orderBy} ) a1 on a.id = a1.id
            set @{update_segment}
            where @{filter}
        </sql>
 
        <sql name="updateSupplementaryData">
            update @{tablename} a
            left join (@{source_tablename}) a1 on @{join_segment}
            set @{update_segment}
            where @{filter}
        </sql>
 
    </dataSpace>
</sqls>