Skip to content

Commit ef7aa9e

Browse files
Merge pull request #2170 from taozhi8833998/fix-except-noql
fix: except op in noql
2 parents a2124c3 + b843ba1 commit ef7aa9e

File tree

5 files changed

+13
-4
lines changed

5 files changed

+13
-4
lines changed

pegjs/bigquery.pegjs

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
'END': true,
3131
'EXISTS': true,
3232
'EXPLAIN': true,
33+
'EXCEPT': true,
3334

3435
'FALSE': true,
3536
'FROM': true,

pegjs/noql.pegjs

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
'END': true,
2929
'EXISTS': true,
3030
'EXPLAIN': true,
31+
'EXCEPT': true,
3132

3233
'FALSE': true,
3334
'FROM': true,

pegjs/postgresql.pegjs

+1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
'END': true,
3030
'EXISTS': true,
3131
'EXPLAIN': true,
32+
'EXCEPT': true,
3233

3334
'FALSE': true,
3435
'FROM': true,

pegjs/redshift.pegjs

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
'END': true,
2929
'EXISTS': true,
3030
'EXPLAIN': true,
31+
'EXCEPT': true,
3132

3233
'FALSE': true,
3334
'FROM': true,

test/noql.spec.js

+9-4
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,17 @@ describe('noql', () => {
2929
expect(getParsedSql(sql)).to.be.equal(`SELECT *, convert("Replacement Cost", 'int') AS "s" FROM "films"`)
3030
})
3131

32-
it('should support intersect', () => {
33-
const sql = `SELECT *
32+
it('should support except and intersect', () => {
33+
let sql = `SELECT *
34+
FROM "top-rated-films"
35+
EXCEPT
36+
SELECT *
37+
FROM "most-popular-films"
38+
ORDER BY name`
39+
expect(getParsedSql(sql)).to.be.equal('SELECT * FROM "top-rated-films" EXCEPT SELECT * FROM "most-popular-films" ORDER BY "name" ASC')
40+
sql = `SELECT *
3441
FROM "most-popular-films"
35-
3642
INTERSECT
37-
3843
SELECT *
3944
FROM "top-rated-films"`
4045
expect(getParsedSql(sql)).to.be.equal('SELECT * FROM "most-popular-films" INTERSECT SELECT * FROM "top-rated-films"')

0 commit comments

Comments
 (0)