当前使用版本(必填,否则不予处理)
3.4.1
该问题是如何引起的?(确定最新版也有问题再提!!!)
sql中包含MySQL自带函数 执行结果没问题,但是控制台有报错
重现步骤(如果有就写完整)
select lvg.in_time, lvg.out_time, exists(select 1 from location_warn lw where lw.card_no = lvg.card_no and hand_time is null) ifWarn FROM location_visitor_log lvg
报错信息
2020-11-24 08:56:52.117 WARN 14016 --- [io-8099-exec-18] c.b.m.e.p.i.PaginationInnerInterceptor : optimize this sql to a count sql has exception, sql:"SELECT lv.NAME, lv.unit, lv.phone, lv.type, lvg.card_no, lvg.place, lvg.in_time, lvg.out_time, exists(select 1 from location_warn lw where lw.card_no = lvg.card_no and hand_time is null) ifWarn FROM location_visitor_log lvg LEFT JOIN location_visitor lv ON lv.id = lvg.visitor_id WHERE lv.company_id = ?
order by lvg.id desc", exception:
net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "exists" "EXISTS" at line 10, column 13.
Was expecting one of:
"!"
"("
"*"
"+"
"-"
":"
"?"
"@"
"@@"
"ACTION"
"ANY"
"BYTE"
"CASCADE"
"CASE"
"CAST"
"CHANGE"
"CHAR"
"CHARACTER"
"COLUMN"
"COLUMNS"
"COMMENT"
"COMMIT"
"CREATE"
"CURRENT"
"CYCLE"
"DESCRIBE"
"DISABLE"
"DO"
"DOUBLE"
"DUPLICATE"
"ENABLE"
"END"
"EXTRACT"
"FALSE"
"FIRST"
"FN"
"FOLLOWING"
"GROUP"
"GROUP_CONCAT"
"IF"
"IIF"
"INDEX"
"INSERT"
"INTERVAL"
"ISNULL"
"KEY"
"LAST"
"LEFT"
"LIMIT"
"MATCH"
"MATERIALIZED"
"NEXTVAL"
"NO"
"NOLOCK"
"NOT"
"NULL"
"NULLS"
"OFFSET"
"ON"
"OPEN"
"OPTIMIZE"
"ORDER"
"OVER"
"PARTITION"
"PATH"
"PERCENT"
"PRECISION"
"PRIMARY"
"PRIOR"
"PROCEDURE"
"RANGE"
"READ"
"REPLACE"
"RIGHT"
"ROW"
"ROWS"
"SCHEMA"
"SEPARATOR"
"SESSION"
"SET"
"SIBLINGS"
"SIZE"
"START"
"TABLE"
"TEMP"
"TEMPORARY"
"TOP"
"TRUE"
"TRUNCATE"
"TYPE"
"UNSIGNED"
"VALIDATE"
"VALUE"
"VALUES"
"VIEW"
"XML"
"ZONE"
"{"
"{d"
"{t"
"{ts"
"~"
<K_DATETIMELITERAL>
<K_DATE_LITERAL>
<K_TIME_KEY_EXPR>
<S_CHAR_LITERAL>
<S_DOUBLE>
<S_HEX>
<S_IDENTIFIER>
<S_LONG>
<S_QUOTED_IDENTIFIER>
Comment From: miemieYaho
jsqlparser 不支持解析