feat: 添加常用函数的重载。

This commit is contained in:
Suomm 2023-07-05 07:51:00 +08:00
parent a3bc330a3e
commit 55b37b1fa0

View File

@ -193,6 +193,27 @@ public class QueryMethods {
return new FunctionQueryColumn(TRUNCATE, LambdaUtil.getQueryColumn(columnX), LambdaUtil.getQueryColumn(columnY));
}
/**
* 返回数值 x 保留到小数点后 y 位的值
*/
public static QueryColumn truncate(String columnX, Integer y) {
return new FunctionQueryColumn(TRUNCATE, new QueryColumn(columnX), number(y));
}
/**
* 返回数值 x 保留到小数点后 y 位的值
*/
public static QueryColumn truncate(QueryColumn columnX, Integer y) {
return new FunctionQueryColumn(TRUNCATE, columnX, number(y));
}
/**
* 返回数值 x 保留到小数点后 y 位的值
*/
public static <T> QueryColumn truncate(LambdaGetter<T> columnX, Integer y) {
return new FunctionQueryColumn(TRUNCATE, LambdaUtil.getQueryColumn(columnX), number(y));
}
/**
* 返回离 x 最近的整数四舍五入
*/
@ -235,6 +256,27 @@ public class QueryMethods {
return new FunctionQueryColumn(ROUND, LambdaUtil.getQueryColumn(columnX), LambdaUtil.getQueryColumn(columnY));
}
/**
* 保留 x 小数点后 y 位的值但截断时要四舍五入
*/
public static QueryColumn round(String columnX, Integer y) {
return new FunctionQueryColumn(ROUND, new QueryColumn(columnX), number(y));
}
/**
* 保留 x 小数点后 y 位的值但截断时要四舍五入
*/
public static QueryColumn round(QueryColumn columnX, Integer y) {
return new FunctionQueryColumn(ROUND, columnX, number(y));
}
/**
* 保留 x 小数点后 y 位的值但截断时要四舍五入
*/
public static <T> QueryColumn round(LambdaGetter<T> columnX, Integer y) {
return new FunctionQueryColumn(ROUND, LambdaUtil.getQueryColumn(columnX), number(y));
}
/**
* 返回 x y 次方
*/
@ -256,6 +298,27 @@ public class QueryMethods {
return new FunctionQueryColumn(POW, LambdaUtil.getQueryColumn(columnX), LambdaUtil.getQueryColumn(columnY));
}
/**
* 返回 x y 次方
*/
public static QueryColumn pow(String columnX, Integer y) {
return new FunctionQueryColumn(POW, new QueryColumn(columnX), number(y));
}
/**
* 返回 x y 次方
*/
public static QueryColumn pow(QueryColumn columnX, Integer y) {
return new FunctionQueryColumn(POW, columnX, number(y));
}
/**
* 返回 x y 次方
*/
public static <T> QueryColumn pow(LambdaGetter<T> columnX, Integer y) {
return new FunctionQueryColumn(POW, LambdaUtil.getQueryColumn(columnX), number(y));
}
/**
* 返回 x y 次方
*/
@ -277,6 +340,27 @@ public class QueryMethods {
return new FunctionQueryColumn(POWER, LambdaUtil.getQueryColumn(columnX), LambdaUtil.getQueryColumn(columnY));
}
/**
* 返回 x y 次方
*/
public static QueryColumn power(String columnX, Integer y) {
return new FunctionQueryColumn(POWER, new QueryColumn(columnX), number(y));
}
/**
* 返回 x y 次方
*/
public static QueryColumn power(QueryColumn columnX, Integer y) {
return new FunctionQueryColumn(POWER, columnX, number(y));
}
/**
* 返回 x y 次方
*/
public static <T> QueryColumn power(LambdaGetter<T> columnX, Integer y) {
return new FunctionQueryColumn(POWER, LambdaUtil.getQueryColumn(columnX), number(y));
}
/**
* 返回 x 的平方根
*/
@ -340,6 +424,27 @@ public class QueryMethods {
return new FunctionQueryColumn(MOD, LambdaUtil.getQueryColumn(columnX), LambdaUtil.getQueryColumn(columnY));
}
/**
* 返回 x 除以 y 以后的余数
*/
public static QueryColumn mod(String columnX, Integer y) {
return new FunctionQueryColumn(MOD, new QueryColumn(columnX), number(y));
}
/**
* 返回 x 除以 y 以后的余数
*/
public static QueryColumn mod(QueryColumn columnX, Integer y) {
return new FunctionQueryColumn(MOD, columnX, number(y));
}
/**
* 返回 x 除以 y 以后的余数
*/
public static <T> QueryColumn mod(LambdaGetter<T> columnX, Integer y) {
return new FunctionQueryColumn(MOD, LambdaUtil.getQueryColumn(columnX), number(y));
}
/**
* 返回自然对数 e 为底的对数
*/
@ -720,6 +825,27 @@ public class QueryMethods {
return new FunctionQueryColumn(LEFT, LambdaUtil.getQueryColumn(columnS), LambdaUtil.getQueryColumn(columnN));
}
/**
* 返回字符串 s 的前 n 个字符
*/
public static QueryColumn left(String columnX, Integer n) {
return new FunctionQueryColumn(LEFT, new QueryColumn(columnX), number(n));
}
/**
* 返回字符串 s 的前 n 个字符
*/
public static QueryColumn left(QueryColumn columnX, Integer n) {
return new FunctionQueryColumn(LEFT, columnX, number(n));
}
/**
* 返回字符串 s 的前 n 个字符
*/
public static <T> QueryColumn left(LambdaGetter<T> columnX, Integer n) {
return new FunctionQueryColumn(LEFT, LambdaUtil.getQueryColumn(columnX), number(n));
}
/**
* 返回字符串 s 的后 n 个字符
*/
@ -741,6 +867,27 @@ public class QueryMethods {
return new FunctionQueryColumn(RIGHT, LambdaUtil.getQueryColumn(columnS), LambdaUtil.getQueryColumn(columnN));
}
/**
* 返回字符串 s 的后 n 个字符
*/
public static QueryColumn right(String columnX, Integer n) {
return new FunctionQueryColumn(RIGHT, new QueryColumn(columnX), number(n));
}
/**
* 返回字符串 s 的后 n 个字符
*/
public static QueryColumn right(QueryColumn columnX, Integer n) {
return new FunctionQueryColumn(RIGHT, columnX, number(n));
}
/**
* 返回字符串 s 的后 n 个字符
*/
public static <T> QueryColumn right(LambdaGetter<T> columnX, Integer n) {
return new FunctionQueryColumn(RIGHT, LambdaUtil.getQueryColumn(columnX), number(n));
}
/**
* 字符串 s2 来填充 s1 的开始处使字符串长度达到 len
*/
@ -853,6 +1000,27 @@ public class QueryMethods {
return new FunctionQueryColumn(REPEAT, LambdaUtil.getQueryColumn(columnS), LambdaUtil.getQueryColumn(columnN));
}
/**
* 将字符串 s 重复 n
*/
public static QueryColumn repeat(String columnX, Integer n) {
return new FunctionQueryColumn(REPEAT, new QueryColumn(columnX), number(n));
}
/**
* 将字符串 s 重复 n
*/
public static QueryColumn repeat(QueryColumn columnX, Integer n) {
return new FunctionQueryColumn(REPEAT, columnX, number(n));
}
/**
* 将字符串 s 重复 n
*/
public static <T> QueryColumn repeat(LambdaGetter<T> columnX, Integer n) {
return new FunctionQueryColumn(REPEAT, LambdaUtil.getQueryColumn(columnX), number(n));
}
/**
* 返回 n 个空格
*/