alasql 4.0.1 → 4.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +942 -0
- package/README.md +2 -2
- package/dist/alasql-worker.js +2 -2
- package/dist/alasql-worker.min.js +1 -1
- package/dist/alasql.d.ts +5 -4
- package/dist/alasql.fs.js +8 -9
- package/dist/alasql.js +8 -9
- package/dist/alasql.min.js +2 -2
- package/modules/xlsx/LICENSE +201 -0
- package/modules/xlsx/bin/xlsx.njs +310 -0
- package/modules/xlsx/bower.json +22 -0
- package/modules/xlsx/dist/LICENSE +201 -0
- package/modules/xlsx/dist/cpexcel.d.ts +39 -0
- package/modules/xlsx/dist/cpexcel.full.mjs +1502 -0
- package/modules/xlsx/dist/cpexcel.js +1506 -0
- package/modules/xlsx/dist/shim.min.js +2 -0
- package/modules/xlsx/dist/xlsx.core.min.js +17 -0
- package/modules/xlsx/dist/xlsx.core.min.map +1 -0
- package/modules/xlsx/dist/xlsx.extendscript.js +26629 -0
- package/modules/xlsx/dist/xlsx.full.min.js +23 -0
- package/modules/xlsx/dist/xlsx.full.min.map +1 -0
- package/modules/xlsx/dist/xlsx.mini.min.js +10 -0
- package/modules/xlsx/dist/xlsx.mini.min.map +1 -0
- package/modules/xlsx/dist/xlsx.zahl.js +4 -0
- package/modules/xlsx/dist/xlsx.zahl.mjs +2 -0
- package/modules/xlsx/dist/zahl.d.ts +4 -0
- package/modules/xlsx/package.json +147 -0
- package/modules/xlsx/types/index.d.ts +990 -0
- package/modules/xlsx/types/tsconfig.json +15 -0
- package/modules/xlsx/xlsx.js +26473 -0
- package/modules/xlsx/xlsx.mjs +26598 -0
- package/modules/xlsx/xlsxworker.js +14 -0
- package/package.json +5 -6
- package/types/alasql.d.ts +5 -4
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,942 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
Please see https://github.com/AlaSQL/alasql/releases for more info...
|
|
4
|
+
|
|
5
|
+
## 0.7.1 (2021-03-05)
|
|
6
|
+
|
|
7
|
+
- Bump: Update lodash dependency
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## 0.7.0 (2021-03-03)
|
|
11
|
+
|
|
12
|
+
- Fix: Code injection vulnerability processing literals
|
|
13
|
+
- Fix: Return empty results in group by when input is empty #927
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### 0.6.5 (11.11.2020)
|
|
18
|
+
|
|
19
|
+
- Fix: Do not include null in COUNT or AVG fixes #1251
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### 0.6.4 (24.09.2020)
|
|
23
|
+
|
|
24
|
+
- Add: String and Number objects supported as values
|
|
25
|
+
- Add: `JOIN USING` now supports String and Number objects
|
|
26
|
+
- Fix: File naming when exporting to Exel
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
### 0.6.2 (31.05.2020)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
- Add: Use NOT BETWEEN without parenthesis.
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### 0.6.1 (20.05.2020)
|
|
37
|
+
|
|
38
|
+
- Add: Use BETWEEN without parenthesis.
|
|
39
|
+
- Fix: Let ADD COLUMN use the given dbtypeid
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
## 0.6.0 (02.05.2020)
|
|
44
|
+
|
|
45
|
+
- Add: NULLS FIRST/LAST clause in ORDER BY (#1187)
|
|
46
|
+
- Add: Support table/row names starting with numbers
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
### 0.5.9 (26.04.2020)
|
|
51
|
+
|
|
52
|
+
- Add: Composite foreign keys implementation (#1179)
|
|
53
|
+
- Fix: Insert's toString() (#1177)
|
|
54
|
+
- Fix: DROP Filestorage Database with database name (#1184)
|
|
55
|
+
|
|
56
|
+
### 0.5.8 (27.03.2020)
|
|
57
|
+
|
|
58
|
+
- Fix: usage of CURRENT_TIMESTAMP (Fix #1174)
|
|
59
|
+
|
|
60
|
+
### 0.5.6 "Bafq" (22.03.2020)
|
|
61
|
+
|
|
62
|
+
- Add: GroupBy within nested array data set/params (#1167)
|
|
63
|
+
- Fix: Use unknown DB name
|
|
64
|
+
|
|
65
|
+
### 0.5.5 "Bam" (29.01.2020)
|
|
66
|
+
|
|
67
|
+
- Fix: Typescript typing
|
|
68
|
+
|
|
69
|
+
### 0.5.4 "Qom" (19.01.2020)
|
|
70
|
+
|
|
71
|
+
- Fix: QUART/MEDIAN/MIN/MAX on number/date/string
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
### 0.5.3 "Chabahar" (02.01.2020)
|
|
75
|
+
|
|
76
|
+
- Better: Support csv data from buffer
|
|
77
|
+
- Better: Error message for foreign key constraint fail #1009
|
|
78
|
+
- Fix: ORDER BY supports parameters #1100
|
|
79
|
+
- Fix: Filestorage DELETE FROM #624
|
|
80
|
+
- Fix: Drop trigger #1113
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
## 0.5.1 "Qazvin" (16.09.2019)
|
|
84
|
+
|
|
85
|
+
- Add: Chain OUTER JOIN's #1105
|
|
86
|
+
- Better: Typescript typings
|
|
87
|
+
- Better: Updated dependencies
|
|
88
|
+
- Fix: Join on CSV files directly
|
|
89
|
+
- Fix: OUTER JOIN bug #1101
|
|
90
|
+
- Fix: Pivot function cast for SUM and AVG
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
### 0.4.11 "Lawdar" (05.10.2018)
|
|
94
|
+
|
|
95
|
+
* Add: Specified XLSX sheet without knowing the name
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
### 0.4.10 "Maoshk" (04.10.2018)
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
* Add: xlsxml files with multiple sheets
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
### 0.4.9 "Alsalfiah" (05.08.2018)
|
|
105
|
+
|
|
106
|
+
* Better: Error message grammar
|
|
107
|
+
* Better: Support for Meteor code standards
|
|
108
|
+
* Fix: dbprecision for select query
|
|
109
|
+
* Fix: Handle promise error when reading one line csv files
|
|
110
|
+
* Fix: AUTO_INCREMENT when using local storage
|
|
111
|
+
|
|
112
|
+
### 0.4.8 "Nafhan" (14.07.2018)
|
|
113
|
+
|
|
114
|
+
* Fix: Error when installing caused by missing cli file in npm
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
### 0.4.7 "Tarim" (14.07.2018)
|
|
118
|
+
|
|
119
|
+
* Better: Always find global object
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
### 0.4.6 "Rahbah" (14.06.2018)
|
|
123
|
+
|
|
124
|
+
* Better: `Use strict` mode for javascript
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
### 0.4.5 "Marib" (24.01.2018)
|
|
128
|
+
|
|
129
|
+
* Fix: Aggregate functions applied to empty sets (#964)
|
|
130
|
+
* Fix: missing ORDER BY direction when calling toString on AST (#970)
|
|
131
|
+
* Fix: Converting the syntax tree back to SQL with multple joins (#972)
|
|
132
|
+
|
|
133
|
+
### 0.4.4 "Alsowm" (03.12.2017)
|
|
134
|
+
|
|
135
|
+
* Better: Better usage via unpkg.com
|
|
136
|
+
* Better: Better usage via jsdelivr.com
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
### 0.4.3 "Hajjah" (05.09.2017)
|
|
140
|
+
|
|
141
|
+
* Update: Removed implicit "any" in definition file
|
|
142
|
+
* Fix: Tabletop reads in empty cells as numeric 0 instead of empty string
|
|
143
|
+
* Fix: DISTINCT on emtpy table produced error
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
### 0.4.2 "Baraqish" (17.08.2017)
|
|
147
|
+
|
|
148
|
+
* Added: SQL function LTRIM
|
|
149
|
+
* Added: SQL function RTRIM
|
|
150
|
+
* Better: Remove implicit any in type script definitioni
|
|
151
|
+
* Better: Out-of-the-box Webpack and Browserify compatibility without hacks
|
|
152
|
+
* Fix: Use created database id on foreign key check as default database
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
### 0.4.1 "Sayhut" (23.07.2017)
|
|
156
|
+
|
|
157
|
+
* Better: Performace on `distinct` selects
|
|
158
|
+
* Better: Hashing for cashed SQLs
|
|
159
|
+
* Fix: Case insensetive selects from EXCEL
|
|
160
|
+
* Fix: Select from empty EXCEL
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
##0.4.0 "Sanaa" (09.05.2017)
|
|
164
|
+
* **Breaking:** OFFSET will now skip the first N rows in a result set before starting to return any rows (before it would skip N-1)
|
|
165
|
+
* Add: Quartile aggregators (QUART, QUART2, QUART3)
|
|
166
|
+
* Add: Typescript definitoin now supports extensions
|
|
167
|
+
* Fix: Aggregate MEDIAN now working with ROLLUP
|
|
168
|
+
* Fix: Aggregate STDEV now working with ROLLUP
|
|
169
|
+
* Fix: SHOW COLUMNS works with the promise interface
|
|
170
|
+
* Fix: SHOW INDEX works with the promise interface
|
|
171
|
+
|
|
172
|
+
### 0.3.9 "Turua" (23.03.2017)
|
|
173
|
+
* Add: React native support
|
|
174
|
+
* Fix: CSV error when quote set to empty
|
|
175
|
+
* Fix: autoExt bug when not set for CSV on read
|
|
176
|
+
|
|
177
|
+
### 0.3.8 "Wanaka" (15.03.2017)
|
|
178
|
+
|
|
179
|
+
* Added: Lazy promise notation
|
|
180
|
+
* Added: Create user defined function via SQL statement
|
|
181
|
+
* Added: Create user defined aggretator via SQL statement
|
|
182
|
+
* Added: Auto extension for filenames on read + write
|
|
183
|
+
* Fix: `.xlsx` can now be imported via browser "upload"
|
|
184
|
+
* Update: `xls.js` package not needed any more. Only `xlsx` package is needed.
|
|
185
|
+
|
|
186
|
+
### 0.3.7 "Niau" (20.02.2017)
|
|
187
|
+
|
|
188
|
+
* Added: Last `S` in `VALUES` can be omitted when insterting (For the lazy ones)
|
|
189
|
+
* Added: The `VALUES` keyword is optional when insterting (For the very lazy ones)
|
|
190
|
+
* Fix: Multiple worksheet Excel with custom headers
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
### 0.3.6 "Hipu" (24.01.2017)
|
|
194
|
+
|
|
195
|
+
* Addded: Support for "use strict"
|
|
196
|
+
* Fix: Select.toString() had bugs
|
|
197
|
+
* Update: Better and faster deep compare of objects
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
### 0.3.5 "Maiao" (22.12.2016)
|
|
201
|
+
* Added: Import data through AngularJS controllers
|
|
202
|
+
* Added: Support for running in VM for nodeJS
|
|
203
|
+
* Fix: Typescript definition
|
|
204
|
+
* Fix: False negatives for deepequal'ing of extended primitives
|
|
205
|
+
* Fix: Double quotation marks in CSV output
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
### 0.3.4 "Fitii" (09.11.2016)
|
|
209
|
+
* Added: trigger `AFTER DELETE`
|
|
210
|
+
* Fix: `TRUNCATE TABLE` now works for local storage DB
|
|
211
|
+
* Fix: `JOIN` a sub select
|
|
212
|
+
* Removed: The `HELP` command (to save space)
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
### 0.3.3 "Makemo" (13.10.2016)
|
|
216
|
+
* Add: support for VALUE inside checks
|
|
217
|
+
* Add: Conflate null and undefined
|
|
218
|
+
* Add: Load CSV data from a string
|
|
219
|
+
* Add: Warn when server side uses browser build of lib
|
|
220
|
+
* Update: typescript definition for native import
|
|
221
|
+
* Update: filesaver.js updated to 1.3.2
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
### 0.3.2 "Maumu" (05.09.2016)
|
|
225
|
+
* Added: Postgres arrays like array[] and text[]
|
|
226
|
+
* Added: Allow non-reserved keywords as identifiers
|
|
227
|
+
* Fix: Empty tsv/csv files will no longer raise an error
|
|
228
|
+
* Fix: alasql.d.ts format
|
|
229
|
+
* Fix: Better way to find out if indexedDB is present
|
|
230
|
+
* Fix: `null = null` is (now) null, baby.
|
|
231
|
+
* Update: Column names first for RECORDSETS
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
### 0.3.1 "Taravao" (01.08.2016)
|
|
235
|
+
* Allow unknown functions to be defined on alasql.fn afterwards
|
|
236
|
+
* Easy access to AUTOINCREMENT values
|
|
237
|
+
* MEDIAN will ignore null values
|
|
238
|
+
* STDEV will ignore null values
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
## Version 0.3.0 "Papeete" (25.07.2016)
|
|
242
|
+
* Breaking change: CSVs with header will now default have BOM added (for better utf8 support)
|
|
243
|
+
* Added: Constraint names will now be exported in error message
|
|
244
|
+
* Added: Web worker now supports .promise notation
|
|
245
|
+
* Added: Postgres-specific aliases and fixes
|
|
246
|
+
* Added: Make converting to an unknown type result in a noop rather than an error
|
|
247
|
+
* Added: Support column types consisting of more than 2 words
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
### 0.2.7 "Corinth" (30.05.2016)
|
|
251
|
+
* Added: Now supports Node 6.0
|
|
252
|
+
* Added: Let .promise return all responses (not just last)
|
|
253
|
+
* Change: Headers set as default true for INTO and FROM statements
|
|
254
|
+
* Fix: Back on track (for good) with supporting Meteor
|
|
255
|
+
* Fix: Default tentative string to numbers conversion when reading data from google spreadsheets
|
|
256
|
+
* Update: No need for empty params when async
|
|
257
|
+
* Update: Better hashing for cashing
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
### 0.2.6 "Frikes" (22.04.2016)
|
|
261
|
+
* Added: Progress callback
|
|
262
|
+
* Change: CLI defaults to pretty print (with option for compressed output as original)
|
|
263
|
+
* Fix: Declaring all variables
|
|
264
|
+
* Fix: Read XLSX files
|
|
265
|
+
* Fix: Selecting a view from localstorage
|
|
266
|
+
* Fix: CREATE VIEW for localStorage engine
|
|
267
|
+
* Fix: Better use for RequireJS
|
|
268
|
+
* Update: CLI output is guaranteed to be valid JSON
|
|
269
|
+
* Update: Better error message for missing table or column
|
|
270
|
+
* Update: Typescript defenition for .promise
|
|
271
|
+
* Update: Empty params not needed for async calls
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
### 0.2.5 "Polychrono" (23.03.2016)
|
|
275
|
+
* Added: Promise chain of queries
|
|
276
|
+
* Fix: Remove leading whitespace from fields when importing csv files
|
|
277
|
+
* Fix: Set default option for XLSXML
|
|
278
|
+
* Fix: Use callbacks consistently
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
### 0.2.4 "Exogi" (04.03.2016)
|
|
282
|
+
* Added: Central enviroment detection
|
|
283
|
+
* Added: SELECT * FROM ? GROUP BY a works as FIRST(*)
|
|
284
|
+
* Added: Better detection for browserify, phonegap and cordova
|
|
285
|
+
* Fix: CONCAT without space
|
|
286
|
+
* Fix: IE11: Reading Excel File
|
|
287
|
+
* Fix: Date handeling (in)dependent from locale
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
### 0.2.3 "Spetses" (01.02.2016)
|
|
291
|
+
* Changed: New fast way to calculate aggregators (some parameters changed)
|
|
292
|
+
* Added: User defined aggregators
|
|
293
|
+
* Fixed: Remove empty Last line in TXT and XLSX
|
|
294
|
+
* Changed: {headers:true} now is default option
|
|
295
|
+
* Fixed: option.joinstar flag for SELECT * FROM a,b
|
|
296
|
+
* Added: EXP() function, ^ now is XOR, ~ binary NOT
|
|
297
|
+
* Added: REPLACE() string function (see issue #560)
|
|
298
|
+
* Added: NEWID(), UUID() and GEN_RANDOM_UUID() functions for GUID
|
|
299
|
+
* Added: DEFAULT for column can be a function (e.g. DEFAULT NEWID())
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
### 0.2.2 "Mitilini" (15.01.2016)
|
|
303
|
+
* Fix: SELECT can use functions from GROUP BY list
|
|
304
|
+
* Fix: Bug in NUMERIC type conversion
|
|
305
|
+
* Added: functions CEIL/CEILING and FLOOR
|
|
306
|
+
* Added: CONCAT to the list of standard functions
|
|
307
|
+
* Fix: Bug with primary key after DELETE all
|
|
308
|
+
* Fix: Added String() to UPPER() and LOWER() functions
|
|
309
|
+
* Added: PIVOT and UNPIVOT functionality
|
|
310
|
+
* Added: REPLACE INTO command (see issue #467)
|
|
311
|
+
* Added: ON UPDATE - column constraint
|
|
312
|
+
* Fix: COLLATE and UNIQUE KEY words for CREATE TABLE (see issue #452)
|
|
313
|
+
* Fix: Added params to SEARCH WHERE function
|
|
314
|
+
* Added: TRIGGERs
|
|
315
|
+
* Fix: Bug with MATRIX modifier
|
|
316
|
+
* Fix: Bug with undefined content variable with IN operation (issue #501)
|
|
317
|
+
* Fix: Bug with wrong realizaion of REPLACE INTO (issue #505)
|
|
318
|
+
* Added: >>,<<,&,| - binary operations
|
|
319
|
+
* Added: || - string concatenation (issue #514)
|
|
320
|
+
* Added: GLOB operator
|
|
321
|
+
* Fix: >> for binary operation and graphs collisions
|
|
322
|
+
* Added: SELECT * FROM INSERTED (for T-SQL like triggers)
|
|
323
|
+
* Fix: Added DEFAULT clause to INSERT SELECT statement
|
|
324
|
+
* Added: expression NOT NULL operator (issue #507)
|
|
325
|
+
* Added and Fix: REINDEX and fixed CREATE INDEX (issues #509, #470)
|
|
326
|
+
* Fixed: browser tests, IndexedDB tests, DROP TABLE callback for external engines
|
|
327
|
+
* Added: DATETIME2 type for compatibility with T-SQL
|
|
328
|
+
* Added: DATEADD() and DATEDIFF() functions in T-SQL style
|
|
329
|
+
* Added: CONCAT_WS() function
|
|
330
|
+
* Added: OF() selector for SEARCH statement
|
|
331
|
+
|
|
332
|
+
### 0.2.1 "Rodos" (28.09.2015)
|
|
333
|
+
* Added: AlaSQL CLI: Support for --version flag
|
|
334
|
+
* Added: AlaSQL CLI: support for CLI exit code
|
|
335
|
+
* Added: AlaSQL CLI: Missing file now won't throw exception (but log error text) nor if its a folder
|
|
336
|
+
* Added: Support for using _ as a single wildcard in LIKE queries
|
|
337
|
+
* Added: Support for FETCH NEXT syntax in queries (MSSQL/T-SQL)
|
|
338
|
+
* Added: SUBSTR() alias for MID() function (for SQLite compatibility)
|
|
339
|
+
* Added: LIKE ESCAPE functionality
|
|
340
|
+
* Added: REGEXP operator (like MySQL) and REGEXP_LIKE() function (like in Oracle)
|
|
341
|
+
* Added: INSERT OR REPLACE VALUE, INSERT OR REPLACE SELECT
|
|
342
|
+
* Added: Read Blob as parameter for from-functions like XLS()
|
|
343
|
+
* Fix: .CSV files made Excel 2013 compliant
|
|
344
|
+
* Fix: misbehavour related to 'NOT' and '=' predecession
|
|
345
|
+
* Fix: alasql running from cordova on iOS
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
## Version 0.2.0 "Athens" (13.07.2015)
|
|
349
|
+
The purpose of this release were hard work on:
|
|
350
|
+
* Documentation
|
|
351
|
+
* Resolving bugs
|
|
352
|
+
* Refactoring code
|
|
353
|
+
|
|
354
|
+
Minor verison updated to sync lib, Meteor and npm version
|
|
355
|
+
|
|
356
|
+
### 0.1.11 "San Remo" (03.06.2015)
|
|
357
|
+
* Code partially refactored with help of bitHound
|
|
358
|
+
* New directory 'partners' added
|
|
359
|
+
* Added file for codecomplexity.com
|
|
360
|
+
|
|
361
|
+
### 0.1.10 "Genova" (31.05.2015 - 02.06.2015)
|
|
362
|
+
* CALL procedure() statement
|
|
363
|
+
* bitHound advices
|
|
364
|
+
* bower.json file updated
|
|
365
|
+
|
|
366
|
+
### 0.1.9 "Torino" (29.05.2015 - 31.05.2015)
|
|
367
|
+
* SERIAL data type added
|
|
368
|
+
* Changed package.json
|
|
369
|
+
* Sample application AlaSQL Codex (alasql.org/codex)
|
|
370
|
+
* Changed type conversion procedure for INTEGER, JSON and other types
|
|
371
|
+
* TypeScript definition file: alasql.d.ts
|
|
372
|
+
|
|
373
|
+
### 0.1.8 "Pisa" (22.05.2015 - 28.05.2015)
|
|
374
|
+
* SELECT FROM syntax
|
|
375
|
+
* Export to multiple sheets workbook
|
|
376
|
+
* SQL-99 features list
|
|
377
|
+
* Changed README.md
|
|
378
|
+
* PEOPLE.md moved to wiki
|
|
379
|
+
* VALUE OF SELECT operator
|
|
380
|
+
* bitHound file
|
|
381
|
+
|
|
382
|
+
### 0.1.7 "Parma" (17.05.2015 - 22.05.2015)
|
|
383
|
+
* Fixed BETWEEN AND and AND parsing priority bug (KPI1:95%)
|
|
384
|
+
* Fixed SUM() with NULL(undefined) values
|
|
385
|
+
* SLT tests run
|
|
386
|
+
* select1.test passed 100%
|
|
387
|
+
* Set jsdoc environment
|
|
388
|
+
* Added 'var y' and functions for NULL and undefined conversions
|
|
389
|
+
* Fixed AVG() aggregator for NULL elements
|
|
390
|
+
* New gulp commands: 'gulp doc' and 'gulp console'
|
|
391
|
+
* Some jsDoc documentation tag added
|
|
392
|
+
* Expression statement ( = 2*2 )
|
|
393
|
+
|
|
394
|
+
### 0.1.6 "Palermo" (13.05.2015 - 17.05.2015)
|
|
395
|
+
* SET NOCOUNT OFF (for CREATE and INSERT)
|
|
396
|
+
* ROWNUM() and ROW_NUMBER() functions
|
|
397
|
+
* Promised version of alasql() - alasql.async() (based on es6-promises)
|
|
398
|
+
* SELECT * FROM Json
|
|
399
|
+
* SEARCH COMMA selector
|
|
400
|
+
* Fixed bug with ORDER BY 1,2,3
|
|
401
|
+
* Added subqueries for INSERT/DELETE/UPDATE
|
|
402
|
+
* First 'official' ECHO plugin released (REQUIRE ECHO)
|
|
403
|
+
* New catalogs added for future plugins
|
|
404
|
+
* Meteor package 'agershun:alasql'
|
|
405
|
+
* Changed readFile and readBinaryFile to read data from Meteor server
|
|
406
|
+
* Added alasql.path
|
|
407
|
+
* Test program improved
|
|
408
|
+
|
|
409
|
+
### 0.1.5 "San Marino" (12.05.2015 - 12.05.2015)
|
|
410
|
+
* Added Meteor package (agershun:alasql) - still does not work - skeleton
|
|
411
|
+
* Northwind test database - test for speed and SQL
|
|
412
|
+
* Added w3 database (Northwind analogue)
|
|
413
|
+
* Fixed FOREIGN KEY problem
|
|
414
|
+
|
|
415
|
+
### 0.1.4 "Napoli" (09.05.2015 - 11.05.2015)
|
|
416
|
+
* Convert Meteor/Mongo collections on the fly
|
|
417
|
+
* Added METEOR() from-function
|
|
418
|
+
* Fixed $[0] -> $0 for parameters
|
|
419
|
+
* utils/2ch.js - utility for minification of AlaSQL (calculate size of economy)
|
|
420
|
+
* d3 graph path samples
|
|
421
|
+
* alasql.options.autovertex flag - create vertices if not found
|
|
422
|
+
* EQ() selector
|
|
423
|
+
* LIKE selector
|
|
424
|
+
* RETURNS selector - return record with columns like in SELECT
|
|
425
|
+
* ALL() and ANY() selectors
|
|
426
|
+
* Added CREATE TABLE column UNIQUE constraint on INSERT/DELETE/UPDATE
|
|
427
|
+
* Added OBJECT_ID() function (like in T-SQL)
|
|
428
|
+
* Added parts and optional for specific database compatibility
|
|
429
|
+
* Changed REFERENCES syntax
|
|
430
|
+
* dbo always as default database (for some compatibility with T-SQL)
|
|
431
|
+
* NOT NULL check on INSERT/UPDATE
|
|
432
|
+
* CHECK constraint (for whole table)
|
|
433
|
+
* CURRENT_TIMESTAMP function
|
|
434
|
+
* UNIQUE constraint (whole table)
|
|
435
|
+
* VARCHAR(MAX)
|
|
436
|
+
* CHECK constraint for columns
|
|
437
|
+
* FOREIGN KEYS for columns and tables
|
|
438
|
+
|
|
439
|
+
### 0.1.3 "Vaticano" (08.05.2015 - 09.05.2015)
|
|
440
|
+
* Check for null values for SEARCH
|
|
441
|
+
* ORDER BY for SEARCH operator
|
|
442
|
+
* Brackets for SEARCH selectors (WITH() selector)
|
|
443
|
+
* SEARCH DISTINCT, UNION ALL, UNION selectors
|
|
444
|
+
* Added simple PATH() selector
|
|
445
|
+
|
|
446
|
+
### 0.1.2 "Firenze" (06.05.2015 - 07.05.2015)
|
|
447
|
+
* Simple compilation of SEARCH operator
|
|
448
|
+
* SUM(),COUNT(),MIN(),MAX(),FIRST(),LAST() search aggregators
|
|
449
|
+
* The # operator, CREATE VERTEX #
|
|
450
|
+
* SEARCH # - start with object
|
|
451
|
+
* SERCH smth # - test for object
|
|
452
|
+
* SEARCH VALUE - leave only one first object in the result
|
|
453
|
+
* Bug in browser version (no global object)
|
|
454
|
+
* Changed Bower
|
|
455
|
+
* CREATE GRAPH
|
|
456
|
+
* Minor changes in SEARCH over XML syntax
|
|
457
|
+
* New tests added
|
|
458
|
+
|
|
459
|
+
### 0.1.1 "Milano" (03.05.2015 - 04.05.2015)
|
|
460
|
+
* XLSXML() into- function with colors
|
|
461
|
+
* $$hashKey - remove Angular's key
|
|
462
|
+
* CREATE VERTEX, CREATE EDGE
|
|
463
|
+
* SEARCH objects
|
|
464
|
+
* SEARCH graph
|
|
465
|
+
* "name" as name for graph vertices and edges
|
|
466
|
+
* Added INSTANCEOF selector
|
|
467
|
+
* Added CLASS selector
|
|
468
|
+
* * selector, + selector, ? selector, !selector for SEARCH in JSON and graphs
|
|
469
|
+
* XML() from function
|
|
470
|
+
* SEARCH INTO functions
|
|
471
|
+
|
|
472
|
+
## 0.1.0 (aka 0.0.52) "Venice" (02.05.2015 - 03.05.2015)
|
|
473
|
+
* Added INFORMATION_SCHEMA from variable
|
|
474
|
+
* Fixed localstorage dropTable with AUTOCOMMIT OFF
|
|
475
|
+
* STD() function added, STDEV(),STEDEVP(),VAR(),VARP()
|
|
476
|
+
* DISTINCT and ALL with custom aggregators (like STD(DISTINCT a))
|
|
477
|
+
* UNION problem fixed
|
|
478
|
+
* IE9 - save plain text and XLS()
|
|
479
|
+
|
|
480
|
+
### 0.0.51 "Rimini" (23.04.2015 - 02.05.2015)
|
|
481
|
+
* alasql.options.modifier flag added
|
|
482
|
+
* alasql.options.columnlookup flag added
|
|
483
|
+
* SELECT * REMOVE COLUMNS a,b
|
|
484
|
+
* SELECT * REMOVE COLUMNS LIKE 'b%'
|
|
485
|
+
* Remove columns from .columns schema
|
|
486
|
+
* Custom aggregators - added additional calls (init and in the cycle)
|
|
487
|
+
* Added MEDIAN() aggregator
|
|
488
|
+
|
|
489
|
+
### 0.0.50 "Seoul" (21.04.2015 - 22.04.2015)
|
|
490
|
+
* CREATE VERTEX and CREATE EDGE syntax
|
|
491
|
+
* Fixed MIN and MAX functions and aggregators #93
|
|
492
|
+
* Found UPDATE bug with column/columnid
|
|
493
|
+
* Fixed bug with valueOf in comparision
|
|
494
|
+
|
|
495
|
+
### 0.0.49 "Beijing" (19.04.2015 - 21.04.2015)
|
|
496
|
+
* CREATE CLASS
|
|
497
|
+
* INSERT INTO class
|
|
498
|
+
* INSERT INTO class returns inserted value
|
|
499
|
+
* The # operator
|
|
500
|
+
* Classes support
|
|
501
|
+
* Tests with SEARCH syntax and tests for CREATE EDGE and CREATE VERTES
|
|
502
|
+
* Fixed bug with leaking to global.key
|
|
503
|
+
|
|
504
|
+
### 0.0.48 "Amsterdam" (18.04.2015 - 19.04.2015)
|
|
505
|
+
* Fixed bug indexedDB.webGetDatabaseNames in Firefox
|
|
506
|
+
* Some bugs from Sqllogictest fixed (see test258)
|
|
507
|
+
* Bower package registered
|
|
508
|
+
* Fixed CASE bonding query to this error
|
|
509
|
+
|
|
510
|
+
### 0.0.47 "Antalya" (16.04.2015 - 18.04.2015)
|
|
511
|
+
* Added CORRESPONDING keyword to the grammas
|
|
512
|
+
* Fixed export to Excel - with data types
|
|
513
|
+
* New version of FileSaver is updated
|
|
514
|
+
* New INTO XLS() function with colors(!)
|
|
515
|
+
* Added params parameter to intoallfn()
|
|
516
|
+
* master and develop branches fixed
|
|
517
|
+
|
|
518
|
+
### 0.0.46 "Cape Town" (14.04.2015 - 14.04.2015)
|
|
519
|
+
* Cleaned 'test' directory
|
|
520
|
+
* Fixed problem with tests
|
|
521
|
+
* Fixed bug with localStorage DELETE FROM (without WHERE)
|
|
522
|
+
|
|
523
|
+
### 0.0.45 "Rio de Janeiro" (13.04.2015 - 13.04.2015)
|
|
524
|
+
* Changed CRLF for alacon.js and alaserver.js to LF
|
|
525
|
+
|
|
526
|
+
### 0.0.44 "Roma" (02.04.2015 - 13.04.2015)
|
|
527
|
+
* Added params to SQLite attached database: alasql('ATTACH SQLITE DATABASE a(?)',[event],cb);
|
|
528
|
+
* Root directory was cleaned
|
|
529
|
+
* Gulp version is updated
|
|
530
|
+
* Fixed bug with (SELECT) and EXISTS() in SELECTS with GROUP BY
|
|
531
|
+
|
|
532
|
+
### 0.0.43 "The Wall" (25.03.2015 - 01.04.2015)
|
|
533
|
+
* Created "develop" branch for git-flow
|
|
534
|
+
* Fixed GREATEST and LEAST() bugs
|
|
535
|
+
* Added flags {sourcefilename: "aaa", range:"B4"} to INTO XLSX() function
|
|
536
|
+
* CREATE TABLE one(two,three) - without coulmn types
|
|
537
|
+
|
|
538
|
+
### 0.0.42 "Robin" (17.03.2015 - 25.03.2015)
|
|
539
|
+
* MAX() and MIN() math functions renamed to GREATEST() and LEAST()
|
|
540
|
+
* ORDER BY 2,1
|
|
541
|
+
* :: casting operator
|
|
542
|
+
* UNARY PLUS
|
|
543
|
+
* NOT LIKE
|
|
544
|
+
* NOT\sLIKE and NOT\sBETWEEN for multiple spaces
|
|
545
|
+
* Removed "Test238"
|
|
546
|
+
|
|
547
|
+
### 0.0.41 "Eagle" (12.03.2015 - 17.03.2015)
|
|
548
|
+
* `column` for column names
|
|
549
|
+
* ``JavaScript expression`` for JavaScript
|
|
550
|
+
* Changed package.json (main:alasql.js)
|
|
551
|
+
|
|
552
|
+
### 0.0.40 "Sapsan" (24.01.2015 - 06.03.2015)
|
|
553
|
+
|
|
554
|
+
* IF EXISTS() and subqueries
|
|
555
|
+
* MERGE syntax
|
|
556
|
+
* alasql('#sql1');
|
|
557
|
+
* alasql(document.querySelector('#sql'));
|
|
558
|
+
* alasql(function(){/* SELECT 100 */}); for multiline SQL statements
|
|
559
|
+
* SELECT one.a,one.b INTO "one.xlsx" FROM "one.json" AS one
|
|
560
|
+
* Cut first BOM character when reading text files in UTF-8
|
|
561
|
+
* LIKE is case-insensitive
|
|
562
|
+
|
|
563
|
+
### 0.0.39 "Everest" (17.01.2015 - 23.01.2015)
|
|
564
|
+
|
|
565
|
+
* `JavaScript()` expressions and statements SELECT `Math.random()*100`
|
|
566
|
+
* Added conversion to number for strings like: ' 123 '
|
|
567
|
+
* Fixed from HTML() function (childNodes -> children)
|
|
568
|
+
* CREATE FILE DATABASE IF NOT EXISTS "filename.json"
|
|
569
|
+
* DROP FILE DATABASE IF EXISTS "filename.json"
|
|
570
|
+
* SELECT a->(1+1) - show ( and ) in toString() function
|
|
571
|
+
* CROSS APPLY and OUTER APPLY (!)
|
|
572
|
+
* Float numbers like 10e20
|
|
573
|
+
* SELECT COLUMN a+(SELECT MAX(b) FROM one) FROM one - SELECT in Expressions
|
|
574
|
+
* Turned off WHERE optimization (due some problem with indices)
|
|
575
|
+
* OVER PARTITION and OVER ORDER syntax
|
|
576
|
+
* NIST SQL Example Tests passed (except constrains and subquery in delete)
|
|
577
|
+
* Errors handling
|
|
578
|
+
* SET ERRORLOG ON/OFF (trap errors)
|
|
579
|
+
* COALESCE() function skips NaN values as well as NULL
|
|
580
|
+
* SET CACHE ON/OFF - turn on/off SQL statements caching
|
|
581
|
+
* loadFileFrom('#selector') - to read data from HTML <tag>
|
|
582
|
+
|
|
583
|
+
### 0.0.38 "Elbrus" (17.01.2015 - 17.01.2015)
|
|
584
|
+
|
|
585
|
+
* Additional wrapper for FileSaver to work with R and V8 (http://cran.r-project.org/web/packages/V8/vignettes/v8_intro.html)
|
|
586
|
+
* Fixed ROLLUP, CUBE and GROUPING SETS()
|
|
587
|
+
* Added Apache Cordova for Windows 8 support
|
|
588
|
+
|
|
589
|
+
|
|
590
|
+
### 0.0.37 "Ararat" (09.01.2015 - 16.01.2015)
|
|
591
|
+
|
|
592
|
+
* Added test for "? IN @(?)"
|
|
593
|
+
* Convert -> correct DATE("20141008")
|
|
594
|
+
* TRUNCATE TABLE table;
|
|
595
|
+
* Fixed bug when COUNT and SUM() aggregators shows 'undefined' with zero groups
|
|
596
|
+
* test-sql tests for compatibility with other databases
|
|
597
|
+
* SELECT TEXT -> SELECT TEXTSTRING (do not conflict with TEXT data type)
|
|
598
|
+
* Fixed bug: different databases for different FROM and JOIN parts
|
|
599
|
+
* Google Spreadsheet integration with Tabletop (https://github.com/jsoma/tabletop) FROM-function: alasql('SELECT * FROM TABLETOP(?)',[url]);
|
|
600
|
+
* Changed worker() method
|
|
601
|
+
* DECLARE with multiple variable definitions and initial value (DECLARE @one int = 123)
|
|
602
|
+
* SET a->property->0->(1+1) = 100
|
|
603
|
+
* Views: CREATE VIEW, DROP VIEW, SELECT FROM VIEW, JOIN VIEW
|
|
604
|
+
* Multi line comments /* */
|
|
605
|
+
* WITH SELECT statement
|
|
606
|
+
* Appach Cordova loadFile and saveFile procedures
|
|
607
|
+
* Test Alasql with Cordova on iPhone, iOS emulator, and Android emulator, Windows 8
|
|
608
|
+
* Fixed bug with npm install (bin directory)
|
|
609
|
+
* Fixed bug in localStorage with local variable
|
|
610
|
+
* fileExists() function
|
|
611
|
+
* FILESTORAGE engine for Node.js and Apach Cordova
|
|
612
|
+
|
|
613
|
+
|
|
614
|
+
### 0.0.36 "Happy New Year" (23.12.2014 - 08.01.2015)
|
|
615
|
+
|
|
616
|
+
* REDUCE Aggregator for custom aggregators
|
|
617
|
+
* LINQ functions (fluent interface):
|
|
618
|
+
* alasql() or alasql(data)
|
|
619
|
+
* From()
|
|
620
|
+
* Where()
|
|
621
|
+
* OrderBy()
|
|
622
|
+
* GroupBy()
|
|
623
|
+
* Having()
|
|
624
|
+
* Select()
|
|
625
|
+
* Top()
|
|
626
|
+
* RANGE(1,10) - from function => [1,2,3,4,5,6,7,8,9,10]
|
|
627
|
+
* HTML-from and into functions
|
|
628
|
+
* Clean root directory
|
|
629
|
+
* GO keyword as semicolon
|
|
630
|
+
* global alasql => var alasql
|
|
631
|
+
* SELECT * INTO SQL() FROM ? - into-function for generating INSERTS
|
|
632
|
+
* SELECT TOP 10 PERCENT * FROM ?
|
|
633
|
+
* ORDER BY _ - fixed
|
|
634
|
+
* ORDER BY formula (ORDER BY MID(a,2,1))
|
|
635
|
+
* GROUP BY formula (GROUP BY MID(a,1,1))
|
|
636
|
+
* HAVING with formulas (HAVING COUNT(*)>1)
|
|
637
|
+
* Fixed COUNT(*) and COUNT(expression)
|
|
638
|
+
* COUNT(DISTINCT all)
|
|
639
|
+
* Subquery SELECT (SELECT)
|
|
640
|
+
* IF expr statement
|
|
641
|
+
* OBJECT_ID(tableid) function
|
|
642
|
+
* IS NULL and IS NOT NULL operators
|
|
643
|
+
* SET option value (ON/OFF)
|
|
644
|
+
* OVER PARTITION ORDER BY syntax
|
|
645
|
+
* SET option ON/OFF (alasql.options.autocommit)
|
|
646
|
+
* SUM(DISTINCT a)
|
|
647
|
+
* Create table column NULL constraint syntax
|
|
648
|
+
* WebWorker (alasql-worker.js)
|
|
649
|
+
* GETDATE() returns date
|
|
650
|
+
* PRINT statement
|
|
651
|
+
* Tests renumbered and fixed
|
|
652
|
+
* REQUIRE 'plugin.js'
|
|
653
|
+
* alasql.worker("../alasql.js", ["plugins.js",...], callback)
|
|
654
|
+
* @localvariable
|
|
655
|
+
* SET @localvariable = expression
|
|
656
|
+
* WHILE, CONTINUE, BREAK, BEGIN END syntax
|
|
657
|
+
* WHILE statement
|
|
658
|
+
* alasql.worker() - run WebWorker
|
|
659
|
+
* alasql-worker.js - library to run webworker
|
|
660
|
+
* FROM @localvariable
|
|
661
|
+
* SELECT INTO @localvariable
|
|
662
|
+
* CONVERT(type,value,style)
|
|
663
|
+
* Fixed multiple same aggregators bug
|
|
664
|
+
* DECLARE @locarvariable type
|
|
665
|
+
|
|
666
|
+
### 0.0.35 (14.12.2014 - 22.12.2014)
|
|
667
|
+
|
|
668
|
+
* Added [?] array conversion
|
|
669
|
+
* ARRAY Aggregator (http://stackoverflow.com/questions/15887900/group-objects-by-property-in-javascript?rq=1)
|
|
670
|
+
* _ column for whole record
|
|
671
|
+
* SELECT INDEX
|
|
672
|
+
* SELECT RECORDSET
|
|
673
|
+
* SELECT TEXTSTRING
|
|
674
|
+
|
|
675
|
+
### 0.0.34 (14.12.2014 - 20.12.2014)
|
|
676
|
+
|
|
677
|
+
* New User Manual written
|
|
678
|
+
* Remove $$hashKey field for Angular.js integration
|
|
679
|
+
* New CSV and TAB parser with separators and quotes
|
|
680
|
+
* Fixed USING bug
|
|
681
|
+
* Fixed HAVING bug
|
|
682
|
+
* INTO JSON function()
|
|
683
|
+
|
|
684
|
+
### 0.0.33 (12.12.2014 - 14.12.2014)
|
|
685
|
+
|
|
686
|
+
* SQL.js engine adapter (to real SQLite database)
|
|
687
|
+
|
|
688
|
+
### 0.0.32 (12.12.2014 - 14.12.2014)
|
|
689
|
+
|
|
690
|
+
* Read XLS and XLSX files (with xlsx package)
|
|
691
|
+
* AT is no longer required for json-objects @{}
|
|
692
|
+
* Stdin and stdout functions for Alacon (INTO TXT() FROM TXT())
|
|
693
|
+
|
|
694
|
+
### 0.0.31 (10.12.2014 - 11.12.2014)
|
|
695
|
+
|
|
696
|
+
* INSERT and DELETE for IndexedDB
|
|
697
|
+
* New tests for FROM and INTO functions
|
|
698
|
+
* UPDATE for IndexedDB
|
|
699
|
+
* DOM-storage support for Node.js (test159.js)
|
|
700
|
+
|
|
701
|
+
|
|
702
|
+
### 0.0.30 (03.12.2014 - 09.12.2014)
|
|
703
|
+
|
|
704
|
+
* Async version (except streamming)
|
|
705
|
+
* Fixed a hundred bugs after changes to async/sync version
|
|
706
|
+
* IndexedDB support (except INSERT/DELETE/UPDATE)
|
|
707
|
+
* DOM-Storage support (pull request #15)
|
|
708
|
+
* Grammar for STORE/RESTORE commands (for key-value storages)
|
|
709
|
+
|
|
710
|
+
### 0.0.29 (29.11.2014 - 02.12.2014)
|
|
711
|
+
|
|
712
|
+
* INSERT/DELETE/UPDATE for localStorage AUTOCOMMIT ON mode
|
|
713
|
+
* ROLLBACK for localStorage bug
|
|
714
|
+
|
|
715
|
+
### 0.0.28 (29.11.2014 - 01.12.2014)
|
|
716
|
+
|
|
717
|
+
* SET AUTOCOMMIT ON|OFF
|
|
718
|
+
* localStorage in AUTOCIMMIT ON mode (without INSERT/DELETE/UPDATE)
|
|
719
|
+
* localStorage in AUTOCIMMIT OF mode (simple COMMIT)
|
|
720
|
+
|
|
721
|
+
### 0.0.27 (27.11.2014 - 29.11.2014)
|
|
722
|
+
|
|
723
|
+
* Function as a source of data for FROM ? AND JOIN ?
|
|
724
|
+
* Virtualization of source
|
|
725
|
+
* Query as a source in joins
|
|
726
|
+
* Multiple databases
|
|
727
|
+
* SELECT * INTO into-function() FROM from-function()
|
|
728
|
+
|
|
729
|
+
|
|
730
|
+
### 0.0.26 (26.11.2014 - 26.11.2014)
|
|
731
|
+
|
|
732
|
+
* Show time in ms in Alasql Console
|
|
733
|
+
* JSON Object functions like d->getFullYear()
|
|
734
|
+
* JavaScript Dates
|
|
735
|
+
* SQL DATE functions
|
|
736
|
+
* alasql.stdfn() - runtime library
|
|
737
|
+
* CREATE TABLE AND INSERT with Date
|
|
738
|
+
* new Date()
|
|
739
|
+
|
|
740
|
+
### 0.0.25 (23.11.2014 - 25.11.2014)
|
|
741
|
+
|
|
742
|
+
* CAST(expression AS type)
|
|
743
|
+
* CONVERT(type, expression)
|
|
744
|
+
* alasql.options.datetimeformat = 'sql' / 'javascript' for CAST
|
|
745
|
+
* loadFile works in Node.js (changes some tests)
|
|
746
|
+
* SELECT VALUE
|
|
747
|
+
* SELECT ROW
|
|
748
|
+
* SELECT COLUMN
|
|
749
|
+
* SELECT MATRIX
|
|
750
|
+
* JSON(json-object)
|
|
751
|
+
* == and !== for deepEqual
|
|
752
|
+
* alacon - alasql console (to run: node alacon sql params...)
|
|
753
|
+
* Json property operator - JSON({a:1,b:[2,3]})->b->1 => 2
|
|
754
|
+
* Alaserver - server for Alasql
|
|
755
|
+
|
|
756
|
+
### 0.0.24 (23.11.2014 - 23.11.2014)
|
|
757
|
+
|
|
758
|
+
* Fixed LIKE operator (added ^ and $)
|
|
759
|
+
* Changed LOAD to SOURCE (like in MySQL)
|
|
760
|
+
* ASSERT operator
|
|
761
|
+
* JSON parser for ASSERT operator
|
|
762
|
+
* Fixed LIKE bug (need more attention)
|
|
763
|
+
* Fixed bug with default column names
|
|
764
|
+
|
|
765
|
+
### 0.0.23 (22.11.2014 - 22.11.2014)
|
|
766
|
+
|
|
767
|
+
* LOAD 'url.sql' - load and execute sql statements
|
|
768
|
+
* HELP - help on Alasql commands
|
|
769
|
+
|
|
770
|
+
### 0.0.22 (20.11.2014 - 22.11.2014)
|
|
771
|
+
|
|
772
|
+
* SELECT UNIQUE
|
|
773
|
+
* SELECT MINUS SELECT
|
|
774
|
+
* RENAME TABLE table TO literal
|
|
775
|
+
* ALTER TABLE table RENAME COLUMN column TO column
|
|
776
|
+
* ALTER TABLE table DROP COLUMN column
|
|
777
|
+
* Double quoter sign '' and \\' translates into '
|
|
778
|
+
* Test with World and Neptuno databases for compatibility
|
|
779
|
+
* alasql.test(), alasql.log(), alasql.write(), alasql.writep()
|
|
780
|
+
* Console
|
|
781
|
+
|
|
782
|
+
### 0.0.21 (19.11.2014 - 20.11.2014)
|
|
783
|
+
|
|
784
|
+
* SELECT a AS q, b w FROM one - AS is not required
|
|
785
|
+
* Comments '--' and '/* */' - single line
|
|
786
|
+
* Double quote sign in the string 'Bon''appetite'
|
|
787
|
+
* Compatibility with World Database (http://dev.mysql.com/doc/world-setup/en/index.html)
|
|
788
|
+
* `literal` in backquotes like literal in square brackets [literal]
|
|
789
|
+
* Additional grammar for ENGINE, CHARSET, etc. and other keywords for World database
|
|
790
|
+
|
|
791
|
+
### 0.0.20 (19.11.2014)
|
|
792
|
+
|
|
793
|
+
* SHOW DATABASES
|
|
794
|
+
* SHOW TABLES
|
|
795
|
+
* SHOW COLUMNS
|
|
796
|
+
* SHOW INDIEX (not fully)
|
|
797
|
+
* CREATE VIEW syntax
|
|
798
|
+
* Case-sensivity
|
|
799
|
+
|
|
800
|
+
### 0.0.19 (19.11.2014 - 19.11.2014)
|
|
801
|
+
|
|
802
|
+
* User-defined functions are database specific.
|
|
803
|
+
* Names in [brackets]
|
|
804
|
+
|
|
805
|
+
### 0.0.18 (15.11.2014 - 18.11.2014)
|
|
806
|
+
|
|
807
|
+
* Added more tests
|
|
808
|
+
* Some minor bugs
|
|
809
|
+
|
|
810
|
+
### 0.0.17 (13.11.2014 - 14.11.2014)
|
|
811
|
+
|
|
812
|
+
* Changed approach to execute and compilations
|
|
813
|
+
* Broke transactions (to be reviewed)
|
|
814
|
+
|
|
815
|
+
### 0.0.16 (11.11.2014 - 12.11.2014)
|
|
816
|
+
|
|
817
|
+
* PRIMARY KEY and FOREIGN KEY parser
|
|
818
|
+
* Use array of arrays as parameter value for FROM clause, column names like \[2\] or table\[0\]
|
|
819
|
+
* alasql.queryArrayOfArrays(), utils.arrayOfArrays()
|
|
820
|
+
* PRIMARY KEY ON inseert, delete, update with one or multiple keys
|
|
821
|
+
* Fixed Uppercase and LowerCase problem
|
|
822
|
+
* CREATE DATABASE, USE DATABASE, DROP DATABASE
|
|
823
|
+
* CROSS and NATURAL JOINs
|
|
824
|
+
* RANDOM
|
|
825
|
+
* INSERT INTO table DEFAULT VALUES
|
|
826
|
+
* CREATE TABLE table (column type DEFAULT value)
|
|
827
|
+
|
|
828
|
+
|
|
829
|
+
### 0.0.15 (10.11.2014)
|
|
830
|
+
|
|
831
|
+
* alasql.userlib replaces with alasql.fn
|
|
832
|
+
* Fixed gulpfile.js
|
|
833
|
+
* CommonJS/AMD/UMD and require.js test
|
|
834
|
+
* alasql(sql, params, callback) function
|
|
835
|
+
* SELECT * FROM one AS t
|
|
836
|
+
* alasql('SELECT * FROM ? AS t', [data]); - array as subquery
|
|
837
|
+
|
|
838
|
+
|
|
839
|
+
### 0.0.14.5 (10.11.2014)
|
|
840
|
+
|
|
841
|
+
* valueOf() instead +Date();
|
|
842
|
+
* Date tests added
|
|
843
|
+
* INSERT date
|
|
844
|
+
|
|
845
|
+
### 0.0.14.4 (10.11.2014)
|
|
846
|
+
|
|
847
|
+
* Negative numbers
|
|
848
|
+
* Float numbers
|
|
849
|
+
* Strings with single and double quaters
|
|
850
|
+
* CASE WHEN THEN END
|
|
851
|
+
* ROUND, MID
|
|
852
|
+
|
|
853
|
+
### 0.0.14.3 (09.11.2014)
|
|
854
|
+
|
|
855
|
+
* RIGHT / OUTER / SEMI / ANTI Joins!
|
|
856
|
+
|
|
857
|
+
### 0.0.14.2 (07.11.2014-08.11.2014)
|
|
858
|
+
|
|
859
|
+
* Added more tests
|
|
860
|
+
|
|
861
|
+
### 0.0.14.1 (07.11.2014-08.11.2014)
|
|
862
|
+
|
|
863
|
+
* Added more tests
|
|
864
|
+
* Minor bugs fixed
|
|
865
|
+
* Database.queryArray method()
|
|
866
|
+
|
|
867
|
+
### 0.0.14 (07.11.2014-08.11.2014)
|
|
868
|
+
|
|
869
|
+
* SELECT INTERSECT, EXCEPT
|
|
870
|
+
* BETWEEN, NOT BETWEEN
|
|
871
|
+
* Fixed problem wuth source.srcwherefn and query.wherefn
|
|
872
|
+
* IN (Subquery), NOT IN(Subquery) - IN(array)
|
|
873
|
+
* alasql.parser.parse renamed to alasql.parse
|
|
874
|
+
* Reduced AST tree in case of srcwherefn and wherefn optimizations in joins
|
|
875
|
+
* % (MODULO) operator (9%7 == 2)
|
|
876
|
+
* Fix 'undefined' column if alias is not exists
|
|
877
|
+
* x > ALL (subquery), x > SOME/ANY (subquery)
|
|
878
|
+
* Check if table exists in the database
|
|
879
|
+
* Multiple user defined functions arguments, like TRIPLE(a,b,c)
|
|
880
|
+
* SELECT TOP (as well as SELECT query LIMIT OFFSET)
|
|
881
|
+
* Fixed ALTER TABLE RENAME TO statement
|
|
882
|
+
* LEN(), UCASE(), LCASE(), UPPER(), LOWER(), NOW()
|
|
883
|
+
* Simple matching with LIKE '%day%'
|
|
884
|
+
* INSERT INTO test VALUES('a'),('10'),('20'),('c'),('30'),('d');
|
|
885
|
+
* SELECT INTO table SELECT query
|
|
886
|
+
|
|
887
|
+
### 0.0.13 (06.11.2014)
|
|
888
|
+
|
|
889
|
+
* FIRST(), LAST()
|
|
890
|
+
* Minor bugs with EXISTS
|
|
891
|
+
|
|
892
|
+
### 0.0.12 (06.11.2014)
|
|
893
|
+
|
|
894
|
+
* SELECT * FROM test WHERE EXISTS(SELECT * FROM test2 WHERE test1.a = test2.a)
|
|
895
|
+
* User-defined functions (alasql.usrlib)
|
|
896
|
+
|
|
897
|
+
### 0.0.11 (06.11.2014)
|
|
898
|
+
|
|
899
|
+
* SELECT * FROM (SELECT * FROM test) t
|
|
900
|
+
|
|
901
|
+
### 0.0.10 (06.11.2014)
|
|
902
|
+
|
|
903
|
+
* SELECT UNION
|
|
904
|
+
* Started SQL tests
|
|
905
|
+
|
|
906
|
+
### 0.0.9 (06.11.2014)
|
|
907
|
+
|
|
908
|
+
* ROLLUP, CUBE, GROUPING SETS support
|
|
909
|
+
|
|
910
|
+
### 0.0.8 (06.11.2014)
|
|
911
|
+
|
|
912
|
+
* Minor bugs
|
|
913
|
+
|
|
914
|
+
### 0.0.7 (06.11.2014)
|
|
915
|
+
|
|
916
|
+
* WHERE column = expression optmization (creare index)
|
|
917
|
+
|
|
918
|
+
### 0.0.6 (04.11.2014)
|
|
919
|
+
|
|
920
|
+
* Developed new parser based on Jison
|
|
921
|
+
* Use Gulp for development platform
|
|
922
|
+
* Where optimization
|
|
923
|
+
* New names for fields => columns and recs => data
|
|
924
|
+
|
|
925
|
+
### 0.0.5 (30.10.2014)
|
|
926
|
+
|
|
927
|
+
* Changed order of LIMIT and ORDER BY processing
|
|
928
|
+
|
|
929
|
+
### Version 0.0.4 (28.10.2014-29.10.2014)
|
|
930
|
+
|
|
931
|
+
* Added /test/main.html mocha browser tests
|
|
932
|
+
* Added PERFORMANCE.md and perf.html tests
|
|
933
|
+
* StringValue.toJS()
|
|
934
|
+
* Added callback to Database.exec
|
|
935
|
+
* Sieve of Eratosthenes example
|
|
936
|
+
* Remove generation of recs after select in case of group by (for memory optimization)
|
|
937
|
+
* Added conversion for type MONEY for INSERT statement
|
|
938
|
+
|
|
939
|
+
### Versions 0.0.1 - 0.0.3 (25.10.2014-27.10.2014)
|
|
940
|
+
|
|
941
|
+
* First version of Alasql
|
|
942
|
+
|