一眼望天涯 发表于 2022-4-1 09:31:59

建议增加查询同字段、不重复数据的功能,类似sql的distinct

本帖最后由 一眼望天涯 于 2022-4-1 09:33 编辑

经常需要这样的需求:
有一张人员表,里面记录了很多人的各种操作,比如员工a修改了合同,员工b添加了审批,员工a删除了项目,员工c修改了销售价格等等。

希望能获取这张表里所有员工的数量,每个员工的姓名只算一次,怎么获取?
直接选择所有记录的行数是肯定不行的,人名有大量的重复。

以前用的办法是先设置空变量,然后对这张表进行循环遍历,如果item.员工名 != 上一个员工名,那么员工数量+1,如果item.员工名 = 上一个员工名,那么忽略。最后的员工数量就是所需要的数据。

这样的后果就是工作量大、效率低、时间长。很多类似的表都需要这个功能,即统计不重复的数据总量。

换成sql的话,直接就是select distinct name from table,快是快了,但是又要手撸代码,还要自己对sql拆解、分析,不太爽。

能不能后期把这个distinct功能加上?我看现在已经加了order(排序)、top X(前几条数据)、where(限定查询条件)等,真的希望能把distinct加上,这个功能用的非常多。

感谢感谢!

Chelsey.Wang 发表于 2022-4-1 10:19:00

您好,这种情况的话,可以使用统计字段中的count来聚合统计:
统计字段 - 活字格V7帮助手册 - 葡萄城产品文档中心 (grapecity.com.cn)



然后无论是在表格中,还是在命令中就都可以通过统计字段的值来计数啦



一眼望天涯 发表于 2022-4-1 11:14:04

Chelsey.Wang 发表于 2022-4-1 10:19
您好,这种情况的话,可以使用统计字段中的count来聚合统计:
统计字段 - 活字格V7帮助手册 - 葡萄城产品文 ...

是服务端需要这种统计功能,把统计结果发给其他命令使用。不是单纯对数据库的表或者页面表格进行处理

Chelsey.Wang 发表于 2022-4-1 15:05:51

一眼望天涯 发表于 2022-4-1 11:14
是服务端需要这种统计功能,把统计结果发给其他命令使用。不是单纯对数据库的表或者页面表格进行处理

理解您的需求了,大佬可以补充一下您的实际应用场景嘛,取到这个值后,后续的具体需要是要怎样使用呢,我们也会据此在内部讨论一下~

一眼望天涯 发表于 2022-4-1 21:31:20

Chelsey.Wang 发表于 2022-4-1 15:05
理解您的需求了,大佬可以补充一下您的实际应用场景嘛,取到这个值后,后续的具体需要是要怎样使用呢,我 ...
经常需要统计各种表的不重复总数,麻烦就在于:
1.这个表通常不是外联表或者内建表中的全表,而是经过一道粗筛的表格;
2.这种distinct需求确实很需要,比如下面这样的每日销售表(这已经是其他命令处理后传过来的数据):
employee   sales_date   sales
a               2022/01/01    100
a                2022/01/02   50
b                2022/01/03   60
c               2022/01/04   70
b               2022/01/05    60
需要知道这几天一共有几位员工参与了销售。用sql的话,直接拉个distinct name + count就出来了,但是如果用服务端命令就非常麻烦,相当于这块功能是缺失的。服务端命令的count,是把所有人都统计一遍,其中a统计了3遍,b统计了2遍,不符合需求。

非常希望增加distinct这种功能,看着需求小,但作用真的很大

Chelsey.Wang 发表于 2022-4-2 10:24:01

一眼望天涯 发表于 2022-4-1 21:31
经常需要统计各种表的不重复总数,麻烦就在于:
1.这个表通常不是外联表或者内建表中的全表,而是经过一 ...

好的,明白啦:jy74a:
感谢您的反馈,这边已经将您的建议记录到需求列表当中,需求编号:40942,后面会由产品组统一评估和规划~
页: [1]
查看完整版本: 建议增加查询同字段、不重复数据的功能,类似sql的distinct