forked from elastic/elasticsearch
/
sql_whitelist.txt
111 lines (101 loc) · 2.54 KB
/
sql_whitelist.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#
# Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
# or more contributor license agreements. Licensed under the Elastic License;
# you may not use this file except in compliance with the Elastic License.
#
# This file contains a whitelist for SQL specific utilities available inside SQL scripting
class org.elasticsearch.xpack.sql.expression.function.scalar.whitelist.InternalSqlScriptUtils {
#
# Utilities
#
def docValue(java.util.Map, String)
boolean nullSafeFilter(Boolean)
double nullSafeSortNumeric(Number)
String nullSafeSortString(Object)
#
# Comparison
#
Boolean eq(Object, Object)
Boolean lt(Object, Object)
Boolean lte(Object, Object)
Boolean gt(Object, Object)
Boolean gte(Object, Object)
Boolean in(Object, java.util.List)
#
# Logical
#
Boolean and(Boolean, Boolean)
Boolean or(Boolean, Boolean)
Boolean not(Boolean)
Boolean notNull(Object)
#
# Regex
#
Boolean regex(String, String)
#
# Math
#
Number add(Number, Number)
Number div(Number, Number)
Number mod(Number, Number)
Number mul(Number, Number)
Number neg(Number)
Number sub(Number, Number)
Number round(Number, Number)
Number truncate(Number, Number)
Double abs(Number)
Double acos(Number)
Double asin(Number)
Double atan(Number)
Double cbrt(Number)
Double ceil(Number)
Double cos(Number)
Double cosh(Number)
Double cot(Number)
Double degrees(Number)
Double e(Number)
Double exp(Number)
Double expm1(Number)
Double floor(Number)
Double log(Number)
Double log10(Number)
Double pi(Number)
Double radians(Number)
Double random(Number)
Double sign(Number)
Double sin(Number)
Double sinh(Number)
Double sqrt(Number)
Double tan(Number)
#
# Date/Time functions
#
Integer dateTimeChrono(Object, String, String)
String dayName(Object, String)
String monthName(Object, String)
Integer quarter(Object, String)
#
# ASCII Functions
#
Integer ascii(String)
Integer bitLength(String)
String character(Number)
Integer charLength(String)
String concat(String, String)
String insert(String, Number, Number, String)
String lcase(String)
String left(String, Number)
Integer length(String)
Integer locate(String, String)
Integer locate(String, String, Number)
String ltrim(String)
Integer octetLength(String)
Integer position(String, String)
String repeat(String, Number)
String replace(String, String, String)
String right(String, Number)
String rtrim(String)
String space(Number)
String substring(String, Number, Number)
String ucase(String)
}