狐表统计工具的时间转换纯日期

发表日期: 2023-06-05

1过去的憋屈做法

在狐表提供的SQlGroupTableBuilder/SQlCrossTableBuilder,对于日期时间的处理不够友好。

很多时候,我就是想根据年月日汇总,得拆分为年→月→日3层表头统计,不能直接用 “yyyy-mm-dd”的格式。

image.png

image.png

又或者不处理DateGroupEnum.None

image.png

时分秒不能合并,导致不能按天合并统计

image.png

 2新的Sql混合优雅方法

所以要巧妙利用Sql的Convert语法:CONVERT(date,你的纯日期列)

Dim g1 As New SQlCrossTableBuilder("g1", "销售记录")
g1.ConnectionName = "DB"
g1.Filter = filter
g1.HGroups.AddDef("所属店铺")
g1.HGroups.AddDef("站点")
g1.HGroups.AddDef("链接")
g1.VGroups.AddExp("销售日期", "CONVERT(date,销售日期)", "销售日期_{0}")
g1.Totals.AddDef("销量")
Dim t As Table = Tables(e.Form.Name & "_Table1")
t.DataSource = g1.BuildDataSource


image.png

官方本身也是支持Sql混写,只不过没有明说

image.png

3如果只要“年月”

语法:CONVERT(varchar(7), CreateTime, 120)

Dim g1 As New SQLGroupTableBuilder("g1", "TemuPurchaseInfo")
g1.ConnectionName = "DB"
g1.Filter = filter
g1.Groups.AddExp("CreateTime", "CONVERT(varchar(7), CreateTime, 120)")
g1.Totals.AddDef("TotalQty")
g1.Totals.AddDef("TotalPrice")

image.png



随便看看
商务联系QQ : 2385350359

Copyright 2016-2023 江门蓬江区华越科技公司 版权所有 | 承接软件定制开发,欢迎联系
粤ICP备19148806号-5