forward / sql-parser

A SQL parser written in pure JS
MIT License
531 stars 132 forks source link

Can not parse concatenated columns #30

Open malpacasville opened 7 years ago

malpacasville commented 7 years ago

Hi, Sql that involves concatenating a string to a column or two columns together can not be parsed.

e.g. var sql = "select FIELD1 || FIELD2 from MYTABLE"; require('sql-parser').lexer.tokenize(sql);

results in:

Error: NOTHING CONSUMED: Stopped at - '|| FIELD2 from MYTABLE' at new Lexer (C:\MyProject\node_modules\sql-parser\lib\lexer.js:21:17)

I use Firebird SQL, so I'm not sure if this is valid in other SQL dialects.

bojanbizjak commented 6 years ago

Same issue.

SELECT code, code || ' : ' || value1 || ' ' || value2 as value from sig_sif

results in:

Uncaught Error: NOTHING CONSUMED: Stopped at - '|| value1 || ' ' || value2 as' at new Lexer (sql-parser.js:26) at Object.exports.tokenize (sql-parser.js:243) at Object.exports.parse (sql-parser.js:1232)

I use SQLite.