algo函数使用原创
金蝶云社区-熊嘉强
熊嘉强
5人赞赏了该文章 5,863次浏览 未经作者许可,禁止转载编辑于2020年10月13日 16:00:44

案例:需要查询出10月10号生日的所有人员的信息

方式一:先查询出所有的数据

DataSet dataSet = QueryServiceHelper.queryDataSet(this.getClass().getName(), "kdec_basicdemo5user", "number, name, datefield", null, null);

再对得到的dataset进行filter过滤

DataSet ddSet = dataSet.filter("Month(datefield)=10 and Day(datefield)=10");

其中相关函数如下:

方式二:可以先添加过滤条件,再查询

QFilter filter = QFilter.of("Month(datefield)=?", "10"); 

 DataSet dataSet = QueryServiceHelper.queryDataSet(this.getClass().getName(), "kdec_basicdemo5user", "number, name, datefield", new Qfilter[]{filter}, null);

--日期函数

函数

说明

Now()

Date()

返回当前时间

Year(date)

返回date年月日中的年

Month(date)

返回date年月日中的月

Day(date)

返回date年月日中的日

Date(year,month,day)

根据year,month,day返回Date字段

TO_DATE(str,format)

如to_date(“1999-1-1”,”yyyy-MM-dd”),这里的format是Java的DateFormat规范,跟SQL的不兼容

TO_CHAR(str,format)

如to_char(date,”yyyy-MM-dd”),这里的format是Java的DateFormat规范,跟SQL的不兼容

Dateadd(datepart,number,date)

DATEADD函数需要3个参数,格式(参考SQL):DATEADD(datepart,number,date),datepart可以为Year,Month,Day,Hour,Minute,Second

DATEDIF(start_date,end_date,unit)

unit可以为Y,M,D

--字符串函数

函数

说明

concat(str1,str2,str3)

字符串拼接, 等价于str1+str2+str3

Contains(left, right)

返回boolean,left是否包含right

StartsWith(left, right)

返回boolean

endsWith(left, right)


Lower(str)

返回小写字符串

Upper(str)

返回大写字符串

Len(str)

返回字符串长度int


图标赞 5
5人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!