MySQL表简化周期性统计递归树结构的保存过程

递归树结构的保存如果按照行来处理,如果是历史数据完全可以封装好JSON数据作为一条记录保存而无需保存成数据结构。对于这类数据需要考虑数据库记录条数,JSON封装格式和极简方式都是在不需要重新构造树结构的基础上实现的,避免了多行记录问题。

目录

数据结构方式

表汇总

轨迹统计年历史表(XH_GJTJ_YEAR_TB)

轨迹统计月历史表(XH_GJTJ_MONTH_TB

轨迹统计周历史表(XH_GJTJ_WEEK_TB)

轨迹统计日历史表(XH_GJTJ_DAY_TB)

事件统计年历史表(XH_SJTJ_YEAR_TB)

事件统计月历史表(XH_SJTJ_MONTH_TB

事件统计周历史表(XH_SJTJ_WEEK_TB)

事件统计日历史表(XH_SJTJ_DAY_TB)

JSON封装格式

轨迹统计年表(XH_GJTJ_YEAR_TB)

轨迹统计月表(XH_GJTJ_MONTH_TB)

轨迹统计周表(XH_GJTJ_WEEK_TB)

轨迹统计日表(XH_GJTJ_DAY_TB)

事件统计年表(XH_SJTJ_YEAR_TB)

事件统计月表(XH_SJTJ_MONTH_TB)

事件统计周表(XH_SJTJ_WEEK_TB)

事件统计日表(XH_SJTJ_DAY_TB)

极简模式

轨迹统计表(XH_GJTJ_TB)

事件统计表(XH_SJTJ_TB)


数据结构方式

表汇总

序号

表名

表别名

备注

1

XH_GJTJ_YEAR_TB

轨迹统计年历史表

年统计(次年计算)

2

XH_GJTJ_MONTH_TB

轨迹统计月历史表

月统计(12个月)(次月计算)

3

XH_GJTJ_WEEK_TB

轨迹统计周历史表

周统计(一年52个星期,从1月1日到12月31日为止不足7天仍然计算)顶格计算53周(下一周计算)

4

XH_GJTJ_DAY_TB

轨迹统计日历史表

可查看前天、昨天、今天(次日计算)

5

XH_SJTJ_YEAR_TB

事件统计年表(事件类型不固定)

年统计(次年计算)

6

XH_SJTJ_MONTH_TB

事件统计月历史(事件类型不固定)

月统计(12个月)(次月计算)

7

XH_SJTJ_WEEK_TB

事件统计周历史(事件类型不固定)

周统计(一年52个星期,从1月1日到12月31日为止不足7天仍然计算)顶格计算53周(下一周计算)

8

XH_SJTJ_DAY_TB

事件统计日历史(事件类型不固定)

可查看前天、昨天、今天(次日计算)

轨迹统计年历史表(XH_GJTJ_YEAR_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

TOTAL_TIME

总时长

DECIMAL

20

2

小时

7

TOTAL_MILEAGE

总里程

DECIMAL

20

2

公里

8

ZONE_TOTAL_TIME

围栏内时长

DECIMAL

20

2

小时

9

ZONE_TOTAL_MILEAGE

围栏内里程

DECIMAL

20

2

公里

10

TOTAL_DAY

总巡护天数

INT

20

0

11

AVE_TIME

平均时长

DECIMAL

4

2

小时/天

12

AVE_MILEAGE

平均里程

DECIMAL

5

2

公里/天

13

ALLSJ_TOTAL

事件总数

INT

20

0

 

14

UNDO_TOTAL

未处理事件数

INT

11

0

 

15

PARID

父节点ID

INT

11

0

据此可递归生成树

轨迹统计月历史表(XH_GJTJ_MONTH_TB

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

MONTH

月份

INT

2

0

1-12

7

TOTAL_TIME

总时长

DECIMAL

20

2

小时

8

TOTAL_MILEAGE

总里程

DECIMAL

20

2

公里

9

ZONE_TOTAL_TIME

围栏内时长

DECIMAL

20

2

小时

10

ZONE_TOTAL_MILEAGE

围栏内里程

DECIMAL

20

2

公里

11

TOTAL_DAY

总巡护天数

INT

20

0

12

AVE_TIME

平均时长

DECIMAL

4

2

小时/天

13

AVE_MILEAGE

平均里程

DECIMAL

5

2

公里/天

14

ALLSJ_TOTAL

事件总数

INT

20

0

 

15

UNDO_TOTAL

未处理事件数

INT

11

0

 

16

PARID

父节点ID

INT

11

0

据此可递归生成

轨迹统计周历史表(XH_GJTJ_WEEK_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

WEEK

周数

INT

2

0

1-53(本年度全年周数)

7

TOTAL_TIME

总时长

DECIMAL

20

2

小时

8

TOTAL_MILEAGE

总里程

DECIMAL

20

2

公里

9

ZONE_TOTAL_TIME

围栏内时长

DECIMAL

20

2

小时

10

ZONE_TOTAL_MILEAGE

围栏内里程

DECIMAL

20

2

公里

11

TOTAL_DAY

总巡护天数

INT

20

0

12

AVE_TIME

平均时长

DECIMAL

4

2

小时/天

13

AVE_MILEAGE

平均里程

DECIMAL

5

2

公里/天

14

ALLSJ_TOTAL

事件总数

INT

20

0

 

15

UNDO_TOTAL

未处理事件数

INT

11

0

 

16

PARID

父节点ID

INT

11

0

据此可递归生成树

 

轨迹统计日历史表(XH_GJTJ_DAY_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

MONTH

月份

INT

2

0

1-12(提高查询效率条件)

7

DAY

日期

DATE

2

0

日期2019-04-10

8

TOTAL_TIME

总时长

DECIMAL

20

2

小时

9

TOTAL_MILEAGE

总里程

DECIMAL

20

2

公里

10

ZONE_TOTAL_TIME

围栏内时长

DECIMAL

20

2

小时

11

ZONE_TOTAL_MILEAGE

围栏内里程

DECIMAL

20

2

公里

12

TOTAL_DAY

总巡护天数

INT

20

0

13

AVE_TIME

平均时长

DECIMAL

4

2

小时/天

14

AVE_MILEAGE

平均里程

DECIMAL

5

2

公里/天

15

ALLSJ_TOTAL

事件总数

INT

20

0

 

16

UNDO_TOTAL

未处理事件数

INT

11

0

 

17

PARID

父节点ID

INT

11

0

据此可递归生成树

事件统计年历史(XH_SJTJ_YEAR_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

TYPE_FIELDS

事件类型字段

VARCHAR

9000

0

YBJC,DFLM.....

7

TYPE_NAMES

事件类型名称

VARCHAR

9000

0

疫病监测,盗伐林木....

8

TYPE_VALUES

事件类型数量

VARCHAR

1000

0

20,30....

9

PARID

父节点ID

INT

11

0

据此可递归生成树

事件统计月历史(XH_SJTJ_MONTH_TB

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

MONTH

月份

INT

2

0

1-12

7

TYPE_FIELDS

事件类型字段

VARCHAR

9000

0

YBJC,DFLM.....

8

TYPE_NAMES

事件类型名称

VARCHAR

9000

0

疫病监测,盗伐林木....

9

TYPE_VALUES

事件类型数量

VARCHAR

1000

0

20,30....

10

PARID

父节点ID

INT

11

0

据此可递归生成树

 

事件统计周历史(XH_SJTJ_WEEK_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

WEEK

周数

INT

2

0

1-53(本年度全年周数)

7

TYPE_FIELDS

事件类型字段

VARCHAR

9000

0

YBJC,DFLM.....

8

TYPE_NAMES

事件类型名称

VARCHAR

9000

0

疫病监测,盗伐林木....

9

TYPE_VALUES

事件类型数量

VARCHAR

1000

0

20,30....

10

PARID

父节点ID

INT

11

0

据此可递归生成树

 

事件统计日历史(XH_SJTJ_DAY_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

NAME

显示名称

VARCHAR

50

0

机构名称或护林员姓名

3

HLY_ID

护林员

INT

20

0

表示护林员,存储机构时为空

4

NSJGID

组织机构

INT

11

0

 

5

YEAR

年度

    INT

4

0

2019

6

MONTH

月份

INT

2

0

1-12

7

DAY

日期

    DATE

0

0

2019-04-10

8

TYPE_FIELDS

事件类型字段

VARCHAR

9000

0

YBJC,DFLM.....

9

TYPE_NAMES

事件类型名称

VARCHAR

9000

0

疫病监测,盗伐林木....

10

TYPE_VALUES

事件类型数量

VARCHAR

1000

0

20,30....

11

PARID

父节点ID

INT

11

0

据此可递归生成树

JSON封装格式

轨迹统计年表(XH_GJTJ_YEAR_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

DATA

数据

TXT

默认

0

统计JOSN数据

轨迹统计月表(XH_GJTJ_MONTH_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

MONTH

月份

INT

2

0

1-12月

4

DATA

数据

TXT

默认

0

统计JOSN数据

 

轨迹统计周表(XH_GJTJ_WEEK_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

WEEK

周数

INT

2

0

1-53周

4

DATA

数据

TXT

默认

0

统计JOSN数据

 

轨迹统计日表(XH_GJTJ_DAY_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

MONTH

月份

INT

2

0

1-12月

4

DAY

日期

DATE

20

0

格式:yyyy-MM-dd

5

DATA

数据

TXT

默认

0

统计JOSN数据

 

事件统计年表(XH_SJTJ_YEAR_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

DATA

数据

TXT

默认

0

统计JOSN数据

 

事件统计月表(XH_SJTJ_MONTH_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

MONTH

月份

INT

2

0

1-12月

4

DATA

数据

TXT

默认

0

统计JOSN数据

 

事件统计周表(XH_SJTJ_WEEK_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

WEEK

周数

INT

2

0

1-53周

4

DATA

数据

TXT

默认

0

统计JOSN数据

 

事件统计日表(XH_SJTJ_DAY_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

YEAR

年度

    INT

4

0

>=2015,<=当前年份

3

MONTH

月份

INT

2

0

1-12月

4

DAY

日期

DATE

20

0

格式:yyyy-MM-dd

5

DATA

数据

TXT

默认

0

统计JOSN数据

极简模式

轨迹统计表(XH_GJTJ_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

TYPE

类型

INT

1

 

YEAR:0,MONTH:1,WEEK:2,DAY:3

3

YEAR

年度

    INT

4

0

>=2015,<=当前年份

4

MONTH

月份

INT

2

0

1-12月,-1标识无效

5

WEEK

周数

INT

2

0

1-53周,-1标识无效

6

DAY

日期

DATE

20

0

格式:yyyy-MM-dd,可为空

7

DATA

数据

TXT

默认

0

统计JOSN数据

 

事件统计表(XH_SJTJ_TB)

序号

字段名

别名

字段类型

长度

精度

备注

1

OBJECTID

OBJECTID

VARCHAR

255

0

唯一编号UUID

2

TYPE

类型

INT

1

 

YEAR:0,MONTH:1,WEEK:2,DAY:3

3

YEAR

年度

    INT

4

0

>=2015,<=当前年份

4

MONTH

月份

INT

2

0

1-12月,-1标识无效

5

WEEK

周数

INT

2

0

1-53周,-1标识无效

6

DAY

日期

DATE

20

0

格式:yyyy-MM-dd,可为空

7

DATA

数据

TXT

默认

0

统计JOSN数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值