-
Notifications
You must be signed in to change notification settings - Fork 0
/
couchbase_n1ql_keywords.conf
336 lines (317 loc) · 4.53 KB
/
couchbase_n1ql_keywords.conf
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
--
-- Author: Hari Sekhon
-- Date: 2016-01-20 19:19:24 +0000 (Wed, 20 Jan 2016)
--
-- vim:ts=2:sts=2:sw=2:et:filetype=sql
--
-- https://github.com/HariSekhon/SQL-keywords
--
-- License: see accompanying LICENSE file
--
-- If you're using my code you're welcome to connect with me on LinkedIn
-- and optionally send me feedback to help improve or steer this or other code I publish
--
-- https://www.linkedin.com/in/HariSekhon
--
-- List of keywords to re-case Couchbase N1QL keywords
-- used by n1qlcase.pl / couchbase_n1qlcase.pl
-- written in the background while sitting in N1QL workshop @ Couchbase office
-- Regex one per line of keywords to re-case by literal replacement
-- whitespace is converted to \s+ for matching so this list can look cleaner
-- leading/trailing whitespace is automatically trimmed
-- don't specify functions such as COUNT() with brackets since brackets are added as one of several possible keyword boundaries
-- keywords are all over the place
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/reservedwords.html
ALL
ALTER
ANALYZE
AND
ANY
ARRAY
AS
ASC
BEGIN
BETWEEN
BINARY
BOOLEAN
BREAK
BUCKET
BY
CALL
CASE
CAST
CLUSTER
COLLATE
COLLECTION
COMMIT
CONNECT
CONTINUE
CORRELATE
CREATE
DATABASE
DATASET
DATASTORE
DECLARE
DELETE
DERIVED
DESC
DESCRIBE
DISTINCT
DO
DROP
EACH
ELEMENT
ELSE
END
EVERY
EXCEPT
EXCLUDE
EXECUTE
EXISTS
EXPLAIN
FALSE
FIRST
FLATTEN
FOR
FROM
FUNCTION
GRANT
GROUP
GSI
HAVING
IF
IN
INCLUDE
INDEX
INLINE
INNER
INSERT
INTERSECT
INTO
IS
JOIN
KEY
KEYS
KEYSPACE
LAST
LEFT
LET
LETTING
LIKE
LIMIT
LSM
MAP
MAPPING
MATCHED
MATERIALIZED
MERGE
MINUS
MISSING
NAMESPACE
NEST
NOT
NULL
NUMBER
OFFSET
ON
OPTION
OR
ORDER
OUTER
OVER
PARSE
PARTITION
PASSWORD
PATH
POOL
PREPARE
PRIMARY
PRIVATE
PRIVILEGE
PROCEDURE
PUBLIC
RAW
REALM
REDUCE
RENAME
RETURN
RETURNING
REVOKE
RIGHT
ROLE
ROLLBACK
SATISFIES
SCHEMA
SELECT
SELF
SET
SHOW
SOME
START
STATISTICS
STRING
SYSTEM
THEN
TO
TRANSACTION
TRIGGER
TRUE
TRUNCATE
UNDER
UNION
UNIQUE
UNNEST
UNSET
UPDATE
UPSERT
USE
USER
USING
VALIDATE
VALUE
VALUED
VALUES
VIEW
WHEN
WHERE
WHILE
WITH
WITHIN
WORK
XOR
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/aggregatefun.html
ARRAY_AGG
AVG
COUNT
MAX
MIN
SUM
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/arrayfun.html
ARRAY_APPEND
ARRAY_AVG
ARRAY_CONCAT
ARRAY_CONTAINS
ARRAY_COUNT
ARRAY_DISTINCT
ARRAY_IFNULL
ARRAY_LENGTH
ARRAY_MAX
ARRAY_MIN
ARRAY_POSITION
ARRAY_PREPEND
ARRAY_PUT
ARRAY_RANGE
ARRAY_REMOVE
ARRAY_REPEAT
ARRAY_REPLACE
ARRAY_REVERSE
ARRAY_SORT
ARRAY_SUM
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/comparisonfun.html
GREATEST
LEAST
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/condfununknown.html
IFMISSING
IFMISSINGORNULL
IFNULL
MISSINGIF
NULLIF
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/condfunnum.html
IFINF
IFNAN
IFNANORINF
NANIF
NEGINFIF
POSINFIF
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/datefun.html
CLOCK_MILLIS
CLOCK_STR
DATE_ADD_MILLIS
DATE_ADD_STR
DATE_DIFF_MILLIS
DATE_DIFF_STR
DATE_PART_MILLIS
DATE_PART_STR
DATE_TRUNC_MILLIS
DATE_TRUNC_STR
MILLIS
MILLIS_TO_STR
MILLIS_TO_UTC
MILLIS_TO_ZONE_NAME
NOW_MILLIS
NOW_STR
STR_TO_MILLIS
STR_TO_UTC
STR_TO_ZONE_NAME
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/jsonfun.html
DECODE_JSON
ENCODED_SIZE
ENCODE_JSON
POLY_LENGTH
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/metafun.html
BASE64
META
UUID
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/numericfun.html
ABS
ACOS
ASIN
ATAN
ATAN2
CEIL
COS
DEGREES
E
EXP
FLOOR
LN
LOG
PI
POWER
RADIANS
RANDOM
ROUND
SIGN
SIN
SQRT
TAN
TRUNC
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/objectfun.html
OBJECT_LENGTH
OBJECT_NAMES
OBJECT_PAIRS
OBJECT_VALUES
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/patternmatchingfun.html
REGEXP_CONTAINS
REGEXP_LIKE
REGEXP_POSITION
REGEXP_REPLACE
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/stringfun.html
CONTAINS
INITCAP
LENGTH
LOWER
LTRIM
POSITION
REPEAT
REPLACE
RTRIM
SPLIT
SUBSTR
TITLE
TRIM
UPPER
-- http://developer.couchbase.com/documentation/server/4.0/n1ql/n1ql-language-reference/typefun.html
ISARRAY
ISATOM
ISBOOLEAN
ISNUMBER
ISOBJECT
ISSTRING
TYPE
TOARRAY
TOATOM
TOBOOLEAN
TONUMBER
TOOBJECT
TOSTRING