alasql
Version:
AlaSQL.js - JavaScript SQL database library for relational and graph data manipulation with support of localStorage, IndexedDB, and Excel
2 lines • 408 kB
JavaScript
(function(root,factory){if(typeof define==="function"&&define.amd){define([],factory)}else if(typeof exports==="object"){module.exports=factory()}else{root.alasql=factory()}})(this,function(){var alasql=function(sql,params,cb,scope){if(typeof importScripts!="function"&&alasql.webworker){var id=alasql.lastid++;alasql.buffer[id]=cb;alasql.webworker.postMessage({id:id,sql:sql,params:params})}else{if(arguments.length==0){return new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]})}else if(arguments.length==1&&typeof sql=="object"&&sql instanceof Array){var select=new yy.Select({columns:[new yy.Column({columnid:"*"})],from:[new yy.ParamValue({param:0})]});select.preparams=[sql];return select}else{if(typeof sql=="string"&&sql[0]=="#"&&typeof document=="object"){sql=document.querySelector(sql).textContent}else if(typeof sql=="object"&&sql instanceof HTMElement){sql=sql.textContent}else if(typeof sql=="function"){sql=sql.toString().slice(14,-3)}return alasql.exec(sql,params,cb,scope)}}};alasql.version="0.1.4";var parser=function(){var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[2,11],$V1=[1,6],$V2=[1,38],$V3=[1,65],$V4=[1,63],$V5=[1,82],$V6=[1,52],$V7=[1,84],$V8=[1,74],$V9=[1,72],$Va=[1,57],$Vb=[1,60],$Vc=[1,55],$Vd=[1,59],$Ve=[1,53],$Vf=[1,61],$Vg=[1,54],$Vh=[1,58],$Vi=[1,71],$Vj=[1,66],$Vk=[1,73],$Vl=[1,75],$Vm=[1,76],$Vn=[1,69],$Vo=[1,70],$Vp=[1,68],$Vq=[1,77],$Vr=[1,78],$Vs=[1,79],$Vt=[1,80],$Vu=[1,81],$Vv=[1,56],$Vw=[1,67],$Vx=[1,64],$Vy=[1,86],$Vz=[1,87],$VA=[8,9,11,259],$VB=[8,9,11,259,263],$VC=[1,144],$VD=[1,145],$VE=[1,107],$VF=[1,117],$VG=[1,120],$VH=[1,115],$VI=[1,123],$VJ=[1,127],$VK=[1,124],$VL=[1,112],$VM=[1,114],$VN=[1,116],$VO=[1,125],$VP=[1,109],$VQ=[1,134],$VR=[1,130],$VS=[1,131],$VT=[1,135],$VU=[1,136],$VV=[1,137],$VW=[1,138],$VX=[1,139],$VY=[1,140],$VZ=[1,141],$V_=[1,142],$V$=[1,143],$V01=[1,118],$V11=[1,119],$V21=[1,121],$V31=[1,122],$V41=[1,128],$V51=[1,126],$V61=[1,129],$V71=[1,113],$V81=[1,133],$V91=[1,146],$Va1=[101,300,359],$Vb1=[1,156],$Vc1=[1,155],$Vd1=[1,161],$Ve1=[4,5],$Vf1=[8,9,11,68,90,100,130,136,137,149,151,170,199,259,263],$Vg1=[4,5,8,9,11,62,66,67,68,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,149,157,159,170,239,240,241,242,243,244,245,246,247,259,263,365,369],$Vh1=[1,181],$Vi1=[1,189],$Vj1=[1,188],$Vk1=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,264,265,266,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$Vl1=[1,213],$Vm1=[1,220],$Vn1=[4,5,67,102,103,108,112,115,120,122,145,146,147,226,227,228,229,231,239,240,241,242,243,244,245,246,247,249,250,251,252,253,255,256,265,365,369],$Vo1=[2,138],$Vp1=[1,234],$Vq1=[4,5,67,102,103,108,112,115,120,122,132,145,146,147,157,159,167,226,227,228,229,231,239,240,241,242,243,244,245,246,247,249,250,251,252,253,255,256,265,365,369],$Vr1=[1,246],$Vs1=[1,254],$Vt1=[1,260],$Vu1=[1,251],$Vv1=[1,255],$Vw1=[1,252],$Vx1=[1,256],$Vy1=[1,258],$Vz1=[1,270],$VA1=[1,267],$VB1=[1,268],$VC1=[1,248],$VD1=[1,250],$VE1=[1,247],$VF1=[1,249],$VG1=[1,253],$VH1=[1,257],$VI1=[1,259],$VJ1=[1,261],$VK1=[1,262],$VL1=[1,263],$VM1=[1,264],$VN1=[1,265],$VO1=[1,269],$VP1=[1,271],$VQ1=[1,272],$VR1=[1,273],$VS1=[1,274],$VT1=[2,258],$VU1=[1,283],$VV1=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,252,259,261,262,263,264,265,266,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,290,294,304,318,319,323,324,343,344,347,348,351,353,355,356,360,362,363,365,369,371,373,379,381,382,384,385,386,387,388,390,393,394,406,412],$VW1=[2,319],$VX1=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,196,197,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,252,259,261,262,263,264,265,266,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,290,294,304,318,319,323,324,343,344,347,348,351,353,355,356,360,362,363,365,369,371,373,379,381,382,384,385,386,387,388,390,393,394,406,412],$VY1=[1,294],$VZ1=[1,304],$V_1=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,264,265,266,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,371,373,379,381,382,384,385,386,387,388,390,393,394,406,412],$V$1=[1,320],$V02=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,165,170,178,180,188,189,190,191,192,193,194,195,196,197,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,252,259,261,262,263,264,265,266,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,288,290,294,303,304,305,318,319,320,323,324,335,337,343,344,347,348,349,350,351,352,353,355,356,357,360,362,363,365,369,371,373,378,379,381,382,384,385,386,387,388,390,393,394,406,412],$V12=[1,328],$V22=[1,327],$V32=[2,439],$V42=[1,333],$V52=[8,9,11,64,66,103,108,110,120,259,263,365,369],$V62=[2,736],$V72=[1,345],$V82=[8,9,11,68,78,103,108,117,160,251,259,263,412],$V92=[8,9,11,64,259,263],$Va2=[2,497],$Vb2=[1,359],$Vc2=[4,5,124],$Vd2=[8,9,11,68,90,100,130,136,137,149,151,199,259,263],$Ve2=[2,139],$Vf2=[1,367],$Vg2=[4,5,87],$Vh2=[1,378],$Vi2=[1,395],$Vj2=[1,377],$Vk2=[1,376],$Vl2=[1,373],$Vm2=[1,374],$Vn2=[1,375],$Vo2=[1,379],$Vp2=[1,380],$Vq2=[1,381],$Vr2=[1,382],$Vs2=[1,383],$Vt2=[1,384],$Vu2=[1,385],$Vv2=[1,386],$Vw2=[1,387],$Vx2=[1,388],$Vy2=[1,389],$Vz2=[1,390],$VA2=[1,391],$VB2=[1,392],$VC2=[1,394],$VD2=[1,396],$VE2=[1,397],$VF2=[1,398],$VG2=[1,399],$VH2=[1,400],$VI2=[1,401],$VJ2=[1,404],$VK2=[1,405],$VL2=[1,406],$VM2=[1,407],$VN2=[1,408],$VO2=[1,409],$VP2=[1,410],$VQ2=[1,411],$VR2=[1,412],$VS2=[1,413],$VT2=[1,414],$VU2=[8,9,11,64,68,90,100,130,136,137,151,178,180,188,189,190,191,192,193,194,195,196,197,199,259,263],$VV2=[2,175],$VW2=[1,429],$VX2=[64,78,160],$VY2=[8,9,11,64,68,122,159,252,259,263,290,304,318,319,323,324,343],$VZ2=[132,134,282],$V_2=[1,498],$V$2=[1,504],$V03=[1,505],$V13=[1,520],$V23=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,95,100,101,102,103,105,106,108,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,264,265,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$V33=[2,334],$V43=[1,527],$V53=[259,261,263],$V63=[64,373],$V73=[64,371,373],$V83=[1,534],$V93=[4,5,8,9,11,48,62,64,66,68,78,82,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,264,265,266,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$Va3=[64,371],$Vb3=[4,5,103,251],$Vc3=[8,9,11,64,66,259,263],$Vd3=[8,9,11,64,66,103,110,115,120,259,263,365,369],$Ve3=[8,9,11,68,78,103,117,160,251,259,263,412],$Vf3=[8,9,11,68,90,100,130,136,137,151,199,259,263],$Vg3=[1,589],$Vh3=[8,9,11,68,259,263],$Vi3=[1,595],$Vj3=[1,596],$Vk3=[1,597],$Vl3=[4,5,8,9,11,62,64,66,67,68,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,157,159,170,239,240,241,242,243,244,245,246,247,259,263,365,369],$Vm3=[8,9,11,68,82,90,100,130,136,137,149,151,170,199,259,263],$Vn3=[1,661],$Vo3=[8,9,11,64,68,82,90,100,130,136,137,149,151,170,199,259,263],$Vp3=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,95,100,101,102,103,105,106,108,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,264,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$Vq3=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,95,100,101,102,103,104,105,106,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,264,265,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$Vr3=[4,5,8,9,11,48,62,64,66,67,68,78,82,90,95,100,101,102,103,105,106,108,110,111,112,113,115,116,117,119,120,124,130,132,134,136,137,138,139,140,141,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,267,268,269,270,271,272,273,278,279,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$Vs3=[4,5,8,9,11,48,62,64,66,67,68,78,82,90,100,101,102,103,105,106,108,112,113,115,116,117,119,120,124,130,132,134,136,137,139,140,141,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,259,261,262,263,278,279,281,283,285,286,294,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$Vt3=[1,681],$Vu3=[8,9,11,64,68,259,263],$Vv3=[2,256],$Vw3=[1,718],$Vx3=[8,9,11,64,66,110,115,120,259,263,365,369],$Vy3=[8,9,11,64,110,259,263],$Vz3=[8,9,11,68,78,117,160,259,263,412],$VA3=[1,736],$VB3=[8,9,11,68,90,130,136,137,151,199,259,263],$VC3=[8,9,11,64,68,90,100,130,136,137,149,151,170,199,259,263],$VD3=[4,5,62,66,67,68,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,157,159,239,240,241,242,243,244,245,246,247,365,369],$VE3=[4,5,62,64,66,67,68,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,157,159,239,240,241,242,243,244,245,246,247,365,369],$VF3=[2,694],$VG3=[1,781],$VH3=[1,792],$VI3=[8,9,11,64,68,100,259,261,263,406],$VJ3=[1,800],$VK3=[1,799],$VL3=[2,297],$VM3=[1,822],$VN3=[2,514],$VO3=[1,844],$VP3=[66,110],$VQ3=[8,9,11,64,66,110,115,259,263,365,369],$VR3=[2,642],$VS3=[1,859],$VT3=[1,860],$VU3=[1,864],$VV3=[8,9,11,64,68,259,261,263,406],$VW3=[1,867],$VX3=[8,9,11,64,68,90,100,130,136,137,151,178,180,188,189,190,191,192,193,194,195,199,259,263],$VY3=[8,9,11,68,90,130,136,137,151,259,263],$VZ3=[1,872],$V_3=[1,876],$V$3=[1,877],$V04=[1,879],$V14=[1,880],$V24=[1,881],$V34=[1,882],$V44=[1,883],$V54=[1,884],$V64=[1,885],$V74=[1,886],$V84=[1,909],$V94=[64,68],$Va4=[8,9,11,259,261,263,406],$Vb4=[94,95],$Vc4=[1,948],$Vd4=[8,9,11,68,130,136,137,151,259,263],$Ve4=[8,9,11,68,90,100,130,136,137,151,178,180,188,189,190,191,192,193,194,195,199,259,263],$Vf4=[1,998],$Vg4=[1,1e3],$Vh4=[4,5,67,112,115,120,147,255],$Vi4=[1,1014],$Vj4=[8,9,11,64,68,130,136,137,151,259,263],$Vk4=[4,5,8,9,11,48,62,64,66,67,68,78,82,87,90,94,95,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,119,120,122,124,130,132,134,136,137,138,139,140,141,145,146,147,149,151,157,159,160,170,178,180,188,189,190,191,192,193,194,195,199,207,210,211,227,239,240,241,242,243,244,245,246,247,251,252,259,261,262,263,264,265,266,267,268,269,270,271,272,273,276,278,279,280,281,283,285,286,290,294,304,318,319,323,324,343,344,347,348,351,353,355,356,360,362,363,365,369,379,381,382,384,385,386,387,388,390,393,394,406,412],$Vl4=[1,1030],$Vm4=[1,1044],$Vn4=[1,1046],$Vo4=[1,1043],$Vp4=[1,1042],$Vq4=[1,1040],$Vr4=[1,1047],$Vs4=[1,1037],$Vt4=[1,1038],$Vu4=[1,1039],$Vv4=[1,1041],$Vw4=[8,9,11,68,130,136,137,259,263],$Vx4=[1,1065],$Vy4=[1,1066],$Vz4=[1,1067],$VA4=[8,9,11,68,90,100,130,136,137,151,178,180,188,189,190,191,192,193,194,195,196,197,199,259,263],$VB4=[1,1093],$VC4=[1,1092],$VD4=[1,1124],$VE4=[1,1125],$VF4=[1,1126],$VG4=[1,1127],$VH4=[159,165,318,319,320,323],$VI4=[2,451],$VJ4=[1,1132],$VK4=[1,1142],$VL4=[8,9,11,64,68,90,130,136,137,151,207,259,263],$VM4=[1,1162],$VN4=[1,1172],$VO4=[8,9,11,259,263,290,303,304,305],$VP4=[1,1283],$VQ4=[1,1293],$VR4=[64,68,196];var parser={trace:function trace(){},yy:{},symbols_:{error:2,Literal:3,LITERAL:4,BRALITERAL:5,main:6,Statements:7,EOF:8,SEMICOLON:9,AStatement:10,GO:11,ExplainStatement:12,EXPLAIN:13,QUERY:14,PLAN:15,Statement:16,If:17,AlterTable:18,AttachDatabase:19,CreateDatabase:20,CreateIndex:21,CreateGraph:22,CreateTable:23,CreateView:24,CreateEdge:25,CreateVertex:26,Declare:27,Delete:28,DetachDatabase:29,DropDatabase:30,DropIndex:31,DropTable:32,DropView:33,Insert:34,RenameTable:35,Select:36,Merge:37,WithSelect:38,ShowCreateTable:39,ShowColumns:40,ShowDatabases:41,ShowIndex:42,ShowTables:43,TruncateTable:44,BeginTransaction:45,CommitTransaction:46,RollbackTransaction:47,EndTransaction:48,UseDatabase:49,Update:50,Help:51,JavaScript:52,Source:53,Assert:54,While:55,Continue:56,Break:57,BeginEnd:58,Print:59,Require:60,SetVariable:61,WITH:62,WithTablesList:63,COMMA:64,WithTable:65,AS:66,LPAR:67,RPAR:68,SelectClause:69,Select_option0:70,IntoClause:71,FromClause:72,WhereClause:73,GroupClause:74,OrderClause:75,LimitClause:76,UnionClause:77,SEARCH:78,Select_repetition0:79,Select_option1:80,RemoveClause:81,REMOVE:82,RemoveClause_option0:83,RemoveColumnsList:84,RemoveColumn:85,Column:86,LIKE:87,StringValue:88,SearchSelector:89,ORDER:90,BY:91,OrderExpressionsList:92,SearchSelector_option0:93,ARROW:94,EQ:95,Expression:96,SearchSelector_repetition_plus0:97,SearchSelector_repetition_plus1:98,SearchSelector_option1:99,WHERE:100,CLASS:101,NUMBER:102,STRING:103,SLASH:104,VERTEX:105,EDGE:106,EXCLAMATION:107,SHARP:108,MODULO:109,GT:110,LT:111,DOLLAR:112,DOT:113,Json:114,AT:115,TO:116,SET:117,SetColumnsList:118,VALUE:119,COLON:120,PlusStar:121,NOT:122,SearchSelector_repetition2:123,IF:124,SearchSelector_repetition3:125,Aggregator:126,SearchSelector_repetition4:127,SearchSelector_group0:128,SearchSelector_repetition5:129,UNION:130,SearchSelectorList:131,ALL:132,SearchSelector_repetition6:133,ANY:134,SearchSelector_repetition7:135,INTERSECT:136,EXCEPT:137,AND:138,OR:139,PATH:140,RETURNS:141,ResultColumns:142,SearchSelectorList_repetition0:143,SearchSelectorList_repetition1:144,PLUS:145,STAR:146,QUESTION:147,SearchFrom:148,FROM:149,SearchLimit:150,LIMIT:151,SearchStrategy:152,STRATEGY:153,SearchTimeout:154,TIMEOUT:155,SelectModifier:156,DISTINCT:157,TopClause:158,UNIQUE:159,SELECT:160,ROW:161,COLUMN:162,MATRIX:163,TEXTSTRING:164,INDEX:165,RECORDSET:166,TOP:167,NumValue:168,PERCENT:169,INTO:170,Table:171,FuncValue:172,ParamValue:173,VarValue:174,FromTablesList:175,JoinTablesList:176,ApplyClause:177,CROSS:178,APPLY:179,OUTER:180,FromTable:181,FromString:182,JoinTable:183,JoinMode:184,JoinTableAs:185,OnClause:186,JoinModeMode:187,NATURAL:188,JOIN:189,INNER:190,LEFT:191,RIGHT:192,FULL:193,SEMI:194,ANTI:195,ON:196,USING:197,ColumnsList:198,GROUP:199,GroupExpressionsList:200,HavingClause:201,GroupExpression:202,GROUPING:203,SETS:204,ROLLUP:205,CUBE:206,HAVING:207,CORRESPONDING:208,OrderExpression:209,DIRECTION:210,COLLATE:211,NOCASE:212,OffsetClause:213,OFFSET:214,ResultColumn:215,Star:216,AggrValue:217,Op:218,LogicValue:219,NullValue:220,ExistsValue:221,CaseValue:222,CastClause:223,NewClause:224,Expression_group0:225,CURRENT_TIMESTAMP:226,JAVASCRIPT:227,NEW:228,CAST:229,ColumnType:230,CONVERT:231,PrimitiveValue:232,ExprList:233,OverClause:234,OVER:235,OverPartitionClause:236,OverOrderByClause:237,PARTITION:238,SUM:239,COUNT:240,MIN:241,MAX:242,AVG:243,FIRST:244,LAST:245,AGGR:246,ARRAY:247,FuncValue_option0:248,TRUE:249,FALSE:250,NSTRING:251,NULL:252,EXISTS:253,ParamValue_group0:254,BRAQUESTION:255,CASE:256,WhensList:257,ElseClause:258,END:259,When:260,WHEN:261,THEN:262,ELSE:263,NOT_LIKE:264,MINUS:265,CARET:266,GE:267,LE:268,EQEQ:269,EQEQEQ:270,NE:271,NEEQEQ:272,NEEQEQEQ:273,CondOp:274,AllSome:275,IN:276,ColFunc:277,BETWEEN:278,NOT_BETWEEN:279,IS:280,DOUBLECOLON:281,SOME:282,UPDATE:283,SetColumn:284,DELETE:285,INSERT:286,Into:287,VALUES:288,ValuesListsList:289,DEFAULT:290,ValuesList:291,Value:292,DateValue:293,CREATE:294,TemporaryClause:295,TableClass:296,IfNotExists:297,CreateTableDefClause:298,CreateTableOptionsClause:299,TABLE:300,CreateTableOptions:301,CreateTableOption:302,ENGINE:303,AUTO_INCREMENT:304,CHARSET:305,TEMPORARY:306,TEMP:307,ColumnDefsList:308,ConstraintsList:309,Constraint:310,ConstraintName:311,PrimaryKey:312,ForeignKey:313,UniqueKey:314,IndexKey:315,Check:316,CONSTRAINT:317,CHECK:318,PRIMARY:319,KEY:320,PrimaryKey_option0:321,ColsList:322,FOREIGN:323,REFERENCES:324,ForeignKey_option0:325,OnForeignKeyClause:326,ParColsList:327,OnDeleteClause:328,OnUpdateClause:329,NO:330,ACTION:331,UniqueKey_option0:332,ColumnDef:333,ColumnConstraintsClause:334,ColumnConstraints:335,NumberMax:336,ENUM:337,ColumnConstraintsList:338,ColumnConstraint:339,ParLiteral:340,ColumnConstraint_option0:341,ColumnConstraint_option1:342,IDENTITY:343,DROP:344,DropTable_group0:345,IfExists:346,ALTER:347,RENAME:348,ADD:349,MODIFY:350,ATTACH:351,DATABASE:352,DETACH:353,AsClause:354,USE:355,SHOW:356,DATABASES:357,TABLES:358,VIEW:359,HELP:360,ExpressionStatement:361,SOURCE:362,ASSERT:363,JsonObject:364,ATLBRA:365,JsonArray:366,JsonValue:367,JsonPrimitiveValue:368,LCUR:369,JsonPropertiesList:370,RCUR:371,JsonElementsList:372,RBRA:373,JsonProperty:374,OnOff:375,SetPropsList:376,SetProp:377,OFF:378,COMMIT:379,TRANSACTION:380,ROLLBACK:381,BEGIN:382,ElseStatement:383,WHILE:384,CONTINUE:385,BREAK:386,PRINT:387,REQUIRE:388,StringValuesList:389,DECLARE:390,DeclaresList:391,DeclareItem:392,TRUNCATE:393,MERGE:394,MergeInto:395,MergeUsing:396,MergeOn:397,MergeMatchedList:398,OutputClause:399,MergeMatched:400,MergeNotMatched:401,MATCHED:402,MergeMatchedAction:403,MergeNotMatchedAction:404,TARGET:405,OUTPUT:406,CreateVertex_option0:407,CreateVertex_option1:408,CreateVertex_option2:409,CreateVertexSet:410,SharpValue:411,CONTENT:412,CreateEdge_option0:413,GRAPH:414,GraphList:415,GraphVertexEdge:416,GraphElement:417,GraphVertexEdge_option0:418,GraphVertexEdge_option1:419,GraphVertexEdge_group0:420,GraphVertexEdge_option2:421,GraphVertexEdge_option3:422,GraphVertexEdge_group1:423,GraphVar:424,GraphAsClause:425,GraphAtClause:426,GraphElement_option0:427,GraphElement_option1:428,GraphElement_option2:429,GraphElement_option3:430,ColonLiteral:431,SharpLiteral:432,DeleteVertex:433,DeleteVertex_option0:434,DeleteEdge:435,DeleteEdge_option0:436,DeleteEdge_option1:437,DeleteEdge_option2:438,FuncValue_option0_group0:439,$accept:0,$end:1},terminals_:{2:"error",4:"LITERAL",5:"BRALITERAL",8:"EOF",9:"SEMICOLON",11:"GO",13:"EXPLAIN",14:"QUERY",15:"PLAN",48:"EndTransaction",62:"WITH",64:"COMMA",66:"AS",67:"LPAR",68:"RPAR",78:"SEARCH",82:"REMOVE",87:"LIKE",90:"ORDER",91:"BY",94:"ARROW",95:"EQ",100:"WHERE",101:"CLASS",102:"NUMBER",103:"STRING",104:"SLASH",105:"VERTEX",106:"EDGE",107:"EXCLAMATION",108:"SHARP",109:"MODULO",110:"GT",111:"LT",112:"DOLLAR",113:"DOT",115:"AT",116:"TO",117:"SET",119:"VALUE",120:"COLON",122:"NOT",124:"IF",130:"UNION",132:"ALL",134:"ANY",136:"INTERSECT",137:"EXCEPT",138:"AND",139:"OR",140:"PATH",141:"RETURNS",145:"PLUS",146:"STAR",147:"QUESTION",149:"FROM",151:"LIMIT",153:"STRATEGY",155:"TIMEOUT",157:"DISTINCT",159:"UNIQUE",160:"SELECT",161:"ROW",162:"COLUMN",163:"MATRIX",164:"TEXTSTRING",165:"INDEX",166:"RECORDSET",167:"TOP",169:"PERCENT",170:"INTO",178:"CROSS",179:"APPLY",180:"OUTER",188:"NATURAL",189:"JOIN",190:"INNER",191:"LEFT",192:"RIGHT",193:"FULL",194:"SEMI",195:"ANTI",196:"ON",197:"USING",199:"GROUP",203:"GROUPING",204:"SETS",205:"ROLLUP",206:"CUBE",207:"HAVING",208:"CORRESPONDING",210:"DIRECTION",211:"COLLATE",212:"NOCASE",214:"OFFSET",226:"CURRENT_TIMESTAMP",227:"JAVASCRIPT",228:"NEW",229:"CAST",231:"CONVERT",235:"OVER",238:"PARTITION",239:"SUM",240:"COUNT",241:"MIN",242:"MAX",243:"AVG",244:"FIRST",245:"LAST",246:"AGGR",247:"ARRAY",249:"TRUE",250:"FALSE",251:"NSTRING",252:"NULL",253:"EXISTS",255:"BRAQUESTION",256:"CASE",259:"END",261:"WHEN",262:"THEN",263:"ELSE",264:"NOT_LIKE",265:"MINUS",266:"CARET",267:"GE",268:"LE",269:"EQEQ",270:"EQEQEQ",271:"NE",272:"NEEQEQ",273:"NEEQEQEQ",276:"IN",278:"BETWEEN",279:"NOT_BETWEEN",280:"IS",281:"DOUBLECOLON",282:"SOME",283:"UPDATE",285:"DELETE",286:"INSERT",288:"VALUES",290:"DEFAULT",293:"DateValue",294:"CREATE",300:"TABLE",303:"ENGINE",304:"AUTO_INCREMENT",305:"CHARSET",306:"TEMPORARY",307:"TEMP",317:"CONSTRAINT",318:"CHECK",319:"PRIMARY",320:"KEY",323:"FOREIGN",324:"REFERENCES",330:"NO",331:"ACTION",335:"ColumnConstraints",337:"ENUM",343:"IDENTITY",344:"DROP",347:"ALTER",348:"RENAME",349:"ADD",350:"MODIFY",351:"ATTACH",352:"DATABASE",353:"DETACH",355:"USE",356:"SHOW",357:"DATABASES",358:"TABLES",359:"VIEW",360:"HELP",362:"SOURCE",363:"ASSERT",365:"ATLBRA",369:"LCUR",371:"RCUR",373:"RBRA",378:"OFF",379:"COMMIT",380:"TRANSACTION",381:"ROLLBACK",382:"BEGIN",384:"WHILE",385:"CONTINUE",386:"BREAK",387:"PRINT",388:"REQUIRE",390:"DECLARE",393:"TRUNCATE",394:"MERGE",402:"MATCHED",405:"TARGET",406:"OUTPUT",412:"CONTENT",414:"GRAPH"},productions_:[0,[3,1],[3,1],[6,2],[7,3],[7,3],[7,1],[7,1],[12,2],[12,4],[10,1],[16,0],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[38,3],[63,3],[63,1],[65,5],[36,9],[36,4],[81,3],[84,3],[84,1],[85,1],[85,2],[89,1],[89,5],[89,5],[89,2],[89,2],[89,2],[89,3],[89,4],[89,4],[89,4],[89,4],[89,1],[89,1],[89,1],[89,1],[89,1],[89,1],[89,2],[89,2],[89,2],[89,1],[89,1],[89,1],[89,2],[89,1],[89,2],[89,3],[89,3],[89,4],[89,1],[89,2],[89,2],[89,4],[89,4],[89,4],[89,4],[89,4],[89,5],[89,4],[89,4],[89,4],[89,4],[89,4],[89,4],[89,4],[89,4],[131,3],[131,1],[121,1],[121,1],[121,1],[148,2],[150,2],[152,2],[154,2],[69,4],[69,4],[69,4],[69,3],[156,1],[156,2],[156,2],[156,2],[156,2],[156,2],[156,2],[156,2],[158,2],[158,4],[158,3],[158,0],[71,0],[71,2],[71,2],[71,2],[71,2],[71,2],[72,2],[72,3],[72,5],[72,0],[177,6],[177,7],[177,6],[177,7],[175,1],[175,3],[181,4],[181,5],[181,3],[181,2],[181,3],[181,1],[181,2],[181,3],[181,1],[181,1],[181,2],[181,3],[181,1],[181,2],[181,3],[181,1],[181,2],[181,3],[182,1],[171,3],[171,1],[176,2],[176,2],[176,1],[176,1],[183,3],[185,1],[185,2],[185,3],[185,2],[185,3],[185,4],[185,5],[185,1],[185,2],[185,3],[185,1],[185,2],[185,3],[184,1],[184,2],[187,1],[187,2],[187,2],[187,3],[187,2],[187,3],[187,2],[187,3],[187,2],[187,2],[187,2],[186,2],[186,2],[186,0],[73,0],[73,2],[74,0],[74,4],[200,1],[200,3],[202,5],[202,4],[202,4],[202,1],[201,0],[201,2],[77,0],[77,2],[77,3],[77,2],[77,2],[77,3],[77,4],[77,3],[77,3],[75,0],[75,3],[92,1],[92,3],[209,1],[209,2],[209,3],[209,4],[76,0],[76,3],[213,0],[213,2],[142,3],[142,1],[215,3],[215,2],[215,3],[215,2],[215,3],[215,2],[215,1],[216,5],[216,3],[216,1],[86,5],[86,3],[86,3],[86,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,1],[96,3],[96,3],[96,3],[96,1],[96,1],[52,1],[224,2],[224,2],[223,6],[223,8],[223,6],[223,8],[232,1],[232,1],[232,1],[232,1],[232,1],[232,1],[232,1],[217,5],[217,6],[217,6],[234,0],[234,4],[234,4],[234,5],[236,3],[237,3],[126,1],[126,1],[126,1],[126,1],[126,1],[126,1],[126,1],[126,1],[126,1],[172,5],[172,3],[233,1],[233,3],[168,1],[219,1],[219,1],[88,1],[88,1],[220,1],[174,2],[221,4],[173,2],[173,2],[173,1],[173,1],[222,5],[222,4],[257,2],[257,1],[260,4],[258,2],[258,0],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,5],[218,3],[218,3],[218,3],[218,5],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,3],[218,6],[218,6],[218,3],[218,3],[218,2],[218,2],[218,2],[218,2],[218,3],[218,5],[218,6],[218,5],[218,6],[218,4],[218,5],[218,3],[218,4],[218,3],[218,3],[218,3],[218,3],[277,1],[277,1],[277,4],[274,1],[274,1],[274,1],[274,1],[274,1],[274,1],[275,1],[275,1],[275,1],[50,6],[50,4],[118,1],[118,3],[284,3],[28,5],[28,3],[34,5],[34,5],[34,8],[34,4],[34,7],[287,0],[287,1],[289,3],[289,1],[289,1],[289,5],[289,3],[289,3],[291,1],[291,3],[292,1],[292,1],[292,1],[292,1],[292,1],[292,1],[198,1],[198,3],[23,9],[23,5],[296,1],[296,1],[299,0],[299,1],[301,2],[301,1],[302,1],[302,3],[302,3],[302,3],[295,0],[295,1],[295,1],[297,0],[297,3],[298,3],[298,1],[298,2],[309,1],[309,3],[310,2],[310,2],[310,2],[310,2],[310,2],[311,0],[311,2],[316,4],[312,6],[313,9],[327,3],[326,0],[326,2],[328,4],[329,4],[314,5],[315,5],[315,5],[322,1],[322,1],[322,3],[322,3],[308,1],[308,3],[333,3],[333,2],[333,1],[230,6],[230,4],[230,1],[230,4],[336,1],[336,1],[334,0],[334,1],[338,2],[338,1],[340,3],[339,2],[339,5],[339,3],[339,1],[339,6],[339,1],[339,2],[339,4],[339,1],[339,2],[339,1],[339,1],[32,4],[346,0],[346,2],[18,6],[18,6],[18,6],[18,8],[18,6],[35,5],[19,4],[19,7],[19,6],[19,9],[29,3],[20,4],[20,6],[20,9],[20,6],[354,0],[354,2],[49,3],[49,2],[30,4],[30,5],[30,5],[21,8],[21,9],[31,3],[41,2],[41,4],[41,3],[41,5],[43,2],[43,4],[43,4],[43,6],[40,4],[40,6],[42,4],[42,6],[39,4],[39,6],[24,10],[24,7],[33,4],[51,2],[51,1],[361,1],[53,2],[54,2],[54,2],[54,4],[114,4],[114,2],[114,2],[114,2],[114,2],[114,1],[114,2],[114,2],[367,1],[367,1],[368,1],[368,1],[368,1],[368,1],[368,1],[368,1],[368,1],[368,3],[364,3],[364,4],[364,2],[366,2],[366,3],[366,1],[370,3],[370,1],[374,3],[374,3],[374,3],[372,3],[372,1],[61,3],[61,5],[61,6],[376,3],[376,2],[377,1],[377,1],[377,3],[375,1],[375,1],[46,2],[47,2],[45,2],[17,4],[17,3],[383,2],[55,3],[56,1],[57,1],[58,3],[59,2],[59,2],[60,2],[389,3],[389,1],[27,2],[391,1],[391,3],[392,3],[392,4],[392,5],[392,6],[44,3],[37,6],[395,1],[395,2],[396,2],[397,2],[398,2],[398,2],[398,1],[398,1],[400,4],[400,6],[403,1],[403,3],[401,5],[401,7],[401,7],[401,9],[401,7],[401,9],[404,3],[404,6],[404,3],[404,6],[399,0],[399,2],[399,5],[399,4],[399,7],[26,6],[411,2],[410,0],[410,2],[410,2],[410,1],[25,8],[22,3],[22,4],[415,3],[415,1],[416,3],[416,7],[424,2],[425,3],[426,2],[417,4],[431,2],[432,2],[432,2],[433,4],[435,6],[70,0],[70,1],[79,0],[79,2],[80,0],[80,1],[83,0],[83,1],[93,0],[93,1],[97,1],[97,2],[98,1],[98,2],[99,0],[99,1],[123,0],[123,2],[125,0],[125,2],[127,0],[127,2],[128,1],[128,1],[129,0],[129,2],[133,0],[133,2],[135,0],[135,2],[143,0],[143,2],[144,0],[144,2],[225,1],[225,1],[439,1],[439,1],[248,0],[248,1],[254,1],[254,1],[321,0],[321,1],[325,0],[325,1],[332,0],[332,1],[341,0],[341,1],[342,0],[342,1],[345,1],[345,1],[407,0],[407,1],[408,0],[408,1],[409,0],[409,1],[413,0],[413,1],[418,0],[418,1],[419,0],[419,1],[420,1],[420,1],[421,0],[421,1],[422,0],[422,1],[423,1],[423,1],[427,0],[427,1],[428,0],[428,1],[429,0],[429,1],[430,0],[430,1],[434,0],[434,2],[436,0],[436,2],[437,0],[437,2],[438,0],[438,2]],performAction:function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:if(yy.casesensitive)this.$=$$[$0];else this.$=$$[$0].toLowerCase();break;case 2:this.$=doubleq($$[$0].substr(1,$$[$0].length-2));break;case 3:return new yy.Statements({statements:$$[$0-1]});break;case 4:case 5:this.$=$$[$0-2];if($$[$0])$$[$0-2].push($$[$0]);break;case 6:case 7:case 59:case 65:case 115:case 153:case 178:case 179:case 214:case 233:case 244:case 314:case 331:case 396:case 409:case 410:case 414:case 422:case 464:case 465:case 578:case 583:case 603:case 605:case 619:case 620:case 650:this.$=[$$[$0]];break;case 8:this.$=$$[$0];$$[$0].explain=true;break;case 9:this.$=$$[$0];$$[$0].explain=true;break;case 10:this.$=$$[$0];if(yy.exists)this.$.exists=yy.exists;delete yy.exists;if(yy.queries)this.$.queries=yy.queries;delete yy.queries;break;case 11:case 127:case 138:case 148:case 209:case 210:case 212:case 220:case 222:case 231:case 239:case 241:case 334:case 426:case 436:case 439:case 451:case 457:case 458:case 497:this.$=undefined;break;case 57:this.$=new yy.WithSelect({withs:$$[$0-1],select:$$[$0]});break;case 58:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 60:this.$={name:$$[$0-4],select:$$[$0-1]};break;case 61:yy.extend(this.$,$$[$0-8]);yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-4]);yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);this.$=$$[$0-8];break;case 62:this.$=new yy.Search({selectors:$$[$0-2],from:$$[$0]});yy.extend(this.$,$$[$0-1]);break;case 63:this.$={removecolumns:$$[$0]};break;case 64:case 649:this.$=$$[$0-2];this.$.push($$[$0]);break;case 66:case 119:case 160:case 219:case 251:case 259:case 260:case 261:case 262:case 263:case 264:case 265:case 266:case 267:case 268:case 269:case 270:case 271:case 272:case 274:case 287:case 288:case 289:case 290:case 291:case 292:case 333:case 385:case 386:case 387:case 388:case 389:case 390:case 452:case 480:case 482:case 552:case 553:case 554:case 555:case 556:case 557:case 561:case 563:case 564:case 573:case 584:case 585:case 641:case 654:case 655:case 657:case 658:this.$=$$[$0];break;case 67:this.$={like:$$[$0]};break;case 68:case 79:this.$={srchid:"PROP",args:[$$[$0]]};break;case 69:this.$={srchid:"ORDERBY",args:$$[$0-1]};break;case 70:var dir=$$[$0-1];if(!dir)dir="ASC";this.$={srchid:"ORDERBY",args:[{expression:new yy.Column({columnid:"_"}),direction:dir}]};break;case 71:this.$={srchid:"APROP",args:[$$[$0]]};break;case 72:this.$={srchid:"EQ",args:[$$[$0]]};break;case 73:this.$={srchid:"LIKE",args:[$$[$0]]};break;case 74:case 75:this.$={selid:"WITH",args:$$[$0-1]};break;case 76:this.$={srchid:$$[$0-3].toUpperCase(),args:$$[$0-1]};break;case 77:this.$={srchid:"WHERE",args:[$$[$0-1]]};break;case 78:this.$={srchid:"CLASS",args:[$$[$0-1]]};break;case 80:this.$={srchid:"NAME",args:[$$[$0].substr(1,$$[$0].length-2)]};break;case 81:this.$={srchid:"CHILD"};break;case 82:this.$={srchid:"VERTEX"};break;case 83:this.$={srchid:"EDGE"};break;case 84:this.$={srchid:"REF"};break;case 85:this.$={srchid:"SHARP",args:[$$[$0]]};break;case 86:this.$={srchid:"ATTR",args:typeof $$[$0]=="undefined"?undefined:[$$[$0]]};break;case 87:this.$={srchid:"ATTR"};break;case 88:this.$={srchid:"OUT"};break;case 89:this.$={srchid:"IN"};break;case 90:this.$={srchid:"CONTENT"};break;case 91:this.$={srchid:"PARENT"};break;case 92:this.$={srchid:"EX",args:[new yy.Json({value:$$[$0]})]};break;case 93:this.$={srchid:"AT",args:[$$[$0]]};break;case 94:this.$={srchid:"AS",args:[$$[$0]]};break;case 95:this.$={srchid:"TO",args:[$$[$0]]};break;case 96:this.$={srchid:"SET",args:$$[$0-1]};break;case 97:this.$={srchid:"VALUE"};break;case 98:this.$={srchid:"CLASS",args:[$$[$0]]};break;case 99:this.$={selid:$$[$0],args:[$$[$0-1]]};break;case 100:this.$={selid:"NOT",args:$$[$0-1]};
break;case 101:this.$={selid:"IF",args:$$[$0-1]};break;case 102:this.$={selid:$$[$0-3],args:$$[$0-1]};break;case 103:this.$={selid:"DISTINCT",args:$$[$0-1]};break;case 104:this.$={selid:"UNION",args:$$[$0-1]};break;case 105:this.$={selid:"UNIONALL",args:$$[$0-1]};break;case 106:this.$={selid:"ALL",args:[$$[$0-1]]};break;case 107:this.$={selid:"ANY",args:[$$[$0-1]]};break;case 108:this.$={selid:"INTERSECT",args:$$[$0-1]};break;case 109:this.$={selid:"EXCEPT",args:$$[$0-1]};break;case 110:this.$={selid:"AND",args:$$[$0-1]};break;case 111:this.$={selid:"OR",args:$$[$0-1]};break;case 112:this.$={selid:"PATH",args:[$$[$0-1]]};break;case 113:this.$={srchid:"RETURNS",args:$$[$0-1]};break;case 114:this.$=$$[$0-2];this.$.push($$[$0]);break;case 116:this.$="PLUS";break;case 117:this.$="STAR";break;case 118:this.$="QUESTION";break;case 123:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 124:this.$=new yy.Select({columns:$$[$0],distinct:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 125:this.$=new yy.Select({columns:$$[$0],all:true});yy,extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-1]);break;case 126:this.$=new yy.Select({columns:$$[$0]});yy,extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 128:this.$={modifier:"VALUE"};break;case 129:this.$={modifier:"ROW"};break;case 130:this.$={modifier:"COLUMN"};break;case 131:this.$={modifier:"MATRIX"};break;case 132:this.$={modifier:"TEXTSTRING"};break;case 133:this.$={modifier:"INDEX"};break;case 134:this.$={modifier:"RECORDSET"};break;case 135:this.$={top:$$[$0]};break;case 136:this.$={top:$$[$0-1]};break;case 137:this.$={top:$$[$0-1],percent:true};break;case 139:case 297:case 459:case 460:case 642:this.$=undefined;break;case 140:case 141:case 142:case 143:this.$={into:$$[$0]};break;case 144:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();if(s[0]=="#"){this.$={into:new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){this.$={into:new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}else if(x4=="XLSX"||x4=="JSON"){this.$={into:new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}}break;case 145:this.$={from:$$[$0]};break;case 146:this.$={from:$$[$0-1],joins:$$[$0]};break;case 147:this.$={from:$$[$0-2],joins:$$[$0-1]};break;case 149:this.$=new yy.Apply({select:$$[$0-2],applymode:"CROSS",as:$$[$0]});break;case 150:this.$=new yy.Apply({select:$$[$0-3],applymode:"CROSS",as:$$[$0]});break;case 151:this.$=new yy.Apply({select:$$[$0-2],applymode:"OUTER",as:$$[$0]});break;case 152:this.$=new yy.Apply({select:$$[$0-3],applymode:"OUTER",as:$$[$0]});break;case 154:case 215:case 397:case 466:case 467:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 155:this.$=$$[$0-2];this.$.as=$$[$0];break;case 156:this.$=$$[$0-3];this.$.as=$$[$0];break;case 157:this.$=$$[$0-1];this.$.as="default";break;case 158:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 159:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 161:case 165:case 168:case 171:this.$=$$[$0-1];$$[$0-1].as=$$[$0];break;case 162:case 166:case 169:case 172:this.$=$$[$0-2];$$[$0-2].as=$$[$0];break;case 163:case 164:case 167:case 170:this.$=$$[$0];$$[$0].as="default";break;case 173:var s=$$[$0];s=s.substr(1,s.length-2);var x3=s.substr(-3).toUpperCase();var x4=s.substr(-4).toUpperCase();var r;if(s[0]=="#"){r=new yy.FuncValue({funcid:"HTML",args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x3=="XLS"||x3=="CSV"||x3=="TAB"){r=new yy.FuncValue({funcid:x3,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else if(x4=="XLSX"||x4=="JSON"){r=new yy.FuncValue({funcid:x4,args:[new yy.StringValue({value:s}),new yy.Json({value:{headers:true}})]})}else{throw new Error("Unknown string in FROM clause")};this.$=r;break;case 174:if($$[$0-2]=="INFORMATION_SCHEMA"){this.$=new yy.FuncValue({funcid:$$[$0-2],args:[new yy.StringValue({value:$$[$0]})]})}else{this.$=new yy.Table({databaseid:$$[$0-2],tableid:$$[$0]})}break;case 175:this.$=new yy.Table({tableid:$$[$0]});break;case 176:case 177:this.$=$$[$0-1];$$[$0-1].push($$[$0]);break;case 180:this.$=new yy.Join($$[$0-2]);yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 181:this.$={table:$$[$0]};break;case 182:this.$={table:$$[$0-1],as:$$[$0]};break;case 183:this.$={table:$$[$0-2],as:$$[$0]};break;case 184:this.$={param:$$[$0-1],as:$$[$0]};break;case 185:this.$={param:$$[$0-2],as:$$[$0]};break;case 186:this.$={select:$$[$0-3],as:$$[$0]};break;case 187:this.$={select:$$[$0-4],as:$$[$0]};break;case 188:this.$={funcid:$$[$0],as:"default"};break;case 189:this.$={funcid:$$[$0-1],as:$$[$0]};break;case 190:this.$={funcid:$$[$0-2],as:$$[$0]};break;case 191:this.$={variable:$$[$0],as:"default"};break;case 192:this.$={variable:$$[$0-1],as:$$[$0]};break;case 193:this.$={variable:$$[$0-2],as:$$[$0]};break;case 194:this.$={joinmode:$$[$0]};break;case 195:this.$={joinmode:$$[$0-1],natural:true};break;case 196:case 197:this.$="INNER";break;case 198:case 199:this.$="LEFT";break;case 200:case 201:this.$="RIGHT";break;case 202:case 203:this.$="OUTER";break;case 204:this.$="SEMI";break;case 205:this.$="ANTI";break;case 206:this.$="CROSS";break;case 207:this.$={on:$$[$0]};break;case 208:case 615:this.$={using:$$[$0]};break;case 211:this.$={where:new yy.Expression({expression:$$[$0]})};break;case 213:this.$={group:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 216:this.$=new yy.GroupExpression({type:"GROUPING SETS",group:$$[$0-1]});break;case 217:this.$=new yy.GroupExpression({type:"ROLLUP",group:$$[$0-1]});break;case 218:this.$=new yy.GroupExpression({type:"CUBE",group:$$[$0-1]});break;case 221:this.$={having:$$[$0]};break;case 223:this.$={union:$$[$0]};break;case 224:this.$={unionall:$$[$0]};break;case 225:this.$={except:$$[$0]};break;case 226:this.$={intersect:$$[$0]};break;case 227:this.$={union:$$[$0],corresponding:true};break;case 228:this.$={unionall:$$[$0],corresponding:true};break;case 229:this.$={except:$$[$0],corresponding:true};break;case 230:this.$={intersect:$$[$0],corresponding:true};break;case 232:this.$={order:$$[$0]};break;case 234:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 235:this.$=new yy.Expression({expression:$$[$0],direction:"ASC"});break;case 236:this.$=new yy.Expression({expression:$$[$0-1],direction:$$[$0].toUpperCase()});break;case 237:this.$=new yy.Expression({expression:$$[$0-2],direction:"ASC",nocase:true});break;case 238:this.$=new yy.Expression({expression:$$[$0-3],direction:$$[$0].toUpperCase(),nocase:true});break;case 240:this.$={limit:$$[$0-1]};yy.extend(this.$,$$[$0]);break;case 242:this.$={offset:$$[$0]};break;case 243:case 445:case 469:case 577:case 582:case 602:case 606:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 245:case 247:case 249:$$[$0-2].as=$$[$0];this.$=$$[$0-2];break;case 246:case 248:case 250:$$[$0-1].as=$$[$0];this.$=$$[$0-1];break;case 252:this.$=new yy.Column({columid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 253:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 254:this.$=new yy.Column({columnid:$$[$0]});break;case 255:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2],databaseid:$$[$0-4]});break;case 256:case 257:this.$=new yy.Column({columnid:$$[$0],tableid:$$[$0-2]});break;case 258:this.$=new yy.Column({columnid:$$[$0]});break;case 273:this.$=new yy.Json({value:$$[$0]});break;case 275:case 276:case 277:if(!yy.queries)yy.queries=[];yy.queries.push($$[$0-1]);$$[$0-1].queriesidx=yy.queries.length;this.$=$$[$0-1];break;case 278:this.$=$$[$0];break;case 279:this.$=new yy.FuncValue({funcid:"CURRENT_TIMESTAMP"});break;case 280:this.$=new yy.JavaScript({value:$$[$0].substr(2,$$[$0].length-4)});break;case 281:this.$=new yy.FuncValue({funcid:$$[$0],newid:true});break;case 282:this.$=$$[$0];yy.extend(this.$,{newid:true});break;case 283:this.$=new yy.Convert({expression:$$[$0-3]});yy.extend(this.$,$$[$0-1]);break;case 284:this.$=new yy.Convert({expression:$$[$0-5],style:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 285:this.$=new yy.Convert({expression:$$[$0-1]});yy.extend(this.$,$$[$0-3]);break;case 286:this.$=new yy.Convert({expression:$$[$0-3],style:$$[$0-1]});yy.extend(this.$,$$[$0-5]);break;case 293:this.$=new yy.FuncValue({funcid:"CURRENT_TIMESTAMP"});break;case 294:if($$[$0-2].length>1&&($$[$0-4].toUpperCase()=="MAX"||$$[$0-4].toUpperCase()=="MIN")){this.$=new yy.FuncValue({funcid:$$[$0-4],args:$$[$0-2]})}else{this.$=new yy.AggrValue({aggregatorid:$$[$0-4].toUpperCase(),expression:$$[$0-2].pop(),over:$$[$0]})}break;case 295:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],distinct:true,over:$$[$0]});break;case 296:this.$=new yy.AggrValue({aggregatorid:$$[$0-5].toUpperCase(),expression:$$[$0-2],over:$$[$0]});break;case 298:case 299:this.$=new yy.Over;yy.extend(this.$,$$[$0-1]);break;case 300:this.$=new yy.Over;yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 301:this.$={partition:$$[$0]};break;case 302:this.$={order:$$[$0]};break;case 303:this.$="SUM";break;case 304:this.$="COUNT";break;case 305:this.$="MIN";break;case 306:case 478:this.$="MAX";break;case 307:this.$="AVG";break;case 308:this.$="FIRST";break;case 309:this.$="LAST";break;case 310:this.$="AGGR";break;case 311:this.$="ARRAY";break;case 312:var funcid=$$[$0-4];var exprlist=$$[$0-1];if(exprlist.length>1&&(funcid.toUpperCase()=="MIN"||funcid.toUpperCase()=="MAX")){this.$=new yy.FuncValue({funcid:funcid,args:exprlist})}else if(alasql.aggr[$$[$0-4]]){this.$=new yy.AggrValue({aggregatorid:"REDUCE",funcid:funcid,expression:exprlist.pop(),distinct:$$[$0-2]=="DISTINCT"})}else{this.$=new yy.FuncValue({funcid:funcid,args:exprlist})};break;case 313:this.$=new yy.FuncValue({funcid:$$[$0-2]});break;case 315:$$[$0-2].push($$[$0]);this.$=$$[$0-2];break;case 316:this.$=new yy.NumValue({value:+$$[$0]});break;case 317:this.$=new yy.LogicValue({value:true});break;case 318:this.$=new yy.LogicValue({value:false});break;case 319:this.$=new yy.StringValue({value:$$[$0].substr(1,$$[$0].length-2).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 320:this.$=new yy.StringValue({value:$$[$0].substr(2,$$[$0].length-3).replace(/(\\\')/g,"'").replace(/(\'\')/g,"'")});break;case 321:this.$=new yy.NullValue({value:undefined});break;case 322:this.$=new yy.VarValue({variable:$$[$0]});break;case 323:if(!yy.exists)yy.exists=[];this.$=new yy.ExistsValue({value:$$[$0-1],existsidx:yy.exists.length});yy.exists.push($$[$0-1]);break;case 324:case 325:this.$=new yy.ParamValue({param:$$[$0]});break;case 326:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++});break;case 327:if(typeof yy.question=="undefined")yy.question=0;this.$=new yy.ParamValue({param:yy.question++,array:true});break;case 328:this.$=new yy.CaseValue({expression:$$[$0-3],whens:$$[$0-2],elses:$$[$0-1]});break;case 329:this.$=new yy.CaseValue({whens:$$[$0-2],elses:$$[$0-1]});break;case 330:case 617:case 618:this.$=$$[$0-1];this.$.push($$[$0]);break;case 332:this.$={when:$$[$0-2],then:$$[$0]};break;case 335:this.$=new yy.Op({left:$$[$0-2],op:"LIKE",right:$$[$0]});break;case 336:this.$=new yy.Op({left:$$[$0-2],op:"NOT LIKE",right:$$[$0]});break;case 337:this.$=new yy.Op({left:$$[$0-2],op:"+",right:$$[$0]});break;case 338:this.$=new yy.Op({left:$$[$0-2],op:"-",right:$$[$0]});break;case 339:this.$=new yy.Op({left:$$[$0-2],op:"*",right:$$[$0]});break;case 340:this.$=new yy.Op({left:$$[$0-2],op:"/",right:$$[$0]});break;case 341:this.$=new yy.Op({left:$$[$0-2],op:"%",right:$$[$0]});break;case 342:this.$=new yy.Op({left:$$[$0-2],op:"^",right:$$[$0]});break;case 343:case 344:case 346:this.$=new yy.Op({left:$$[$0-2],op:"->",right:$$[$0]});break;case 345:this.$=new yy.Op({left:$$[$0-4],op:"->",right:$$[$0-1]});break;case 347:case 348:case 350:this.$=new yy.Op({left:$$[$0-2],op:"!",right:$$[$0]});break;case 349:this.$=new yy.Op({left:$$[$0-4],op:"!",right:$$[$0-1]});break;case 351:this.$=new yy.Op({left:$$[$0-2],op:">",right:$$[$0]});break;case 352:this.$=new yy.Op({left:$$[$0-2],op:">=",right:$$[$0]});break;case 353:this.$=new yy.Op({left:$$[$0-2],op:"<",right:$$[$0]});break;case 354:this.$=new yy.Op({left:$$[$0-2],op:"<=",right:$$[$0]});break;case 355:this.$=new yy.Op({left:$$[$0-2],op:"=",right:$$[$0]});break;case 356:this.$=new yy.Op({left:$$[$0-2],op:"==",right:$$[$0]});break;case 357:this.$=new yy.Op({left:$$[$0-2],op:"===",right:$$[$0]});break;case 358:this.$=new yy.Op({left:$$[$0-2],op:"!=",right:$$[$0]});break;case 359:this.$=new yy.Op({left:$$[$0-2],op:"!==",right:$$[$0]});break;case 360:this.$=new yy.Op({left:$$[$0-2],op:"!===",right:$$[$0]});break;case 361:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 362:this.$=new yy.Op({left:$$[$0-5],op:$$[$0-4],allsome:$$[$0-3],right:$$[$0-1]});break;case 363:this.$=new yy.Op({left:$$[$0-2],op:"AND",right:$$[$0]});break;case 364:this.$=new yy.Op({left:$$[$0-2],op:"OR",right:$$[$0]});break;case 365:this.$=new yy.UniOp({op:"NOT",right:$$[$0]});break;case 366:this.$=new yy.UniOp({op:"-",right:$$[$0]});break;case 367:this.$=new yy.UniOp({op:"+",right:$$[$0]});break;case 368:this.$=new yy.UniOp({op:"#",right:$$[$0]});break;case 369:this.$=new yy.UniOp({right:$$[$0-1]});break;case 370:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 371:if(!yy.queries)yy.queries=[];this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1],queriesidx:yy.queries.length});yy.queries.push($$[$0-1]);break;case 372:this.$=new yy.Op({left:$$[$0-4],op:"IN",right:$$[$0-1]});break;case 373:this.$=new yy.Op({left:$$[$0-5],op:"NOT IN",right:$$[$0-1]});break;case 374:this.$=new yy.Op({left:$$[$0-3],op:"IN",right:[]});break;case 375:this.$=new yy.Op({left:$$[$0-4],op:"NOT IN",right:[]});break;case 376:this.$=new yy.Op({left:$$[$0-2],op:"IN",right:$$[$0]});break;case 377:this.$=new yy.Op({left:$$[$0-3],op:"NOT IN",right:$$[$0]});break;case 378:this.$=new yy.Op({left:$$[$0-2],op:"BETWEEN",right:$$[$0]});break;case 379:this.$=new yy.Op({left:$$[$0-2],op:"NOT BETWEEN",right:$$[$0]});break;case 380:this.$=new yy.Op({op:"IS",left:$$[$0-2],right:$$[$0]});break;case 381:this.$=new yy.Convert({expression:$$[$0-2]});yy.extend(this.$,$$[$0]);break;case 382:case 383:this.$=$$[$0];break;case 384:this.$=$$[$0-1];break;case 391:this.$="ALL";break;case 392:this.$="SOME";break;case 393:this.$="ANY";break;case 394:this.$=new yy.Update({table:$$[$0-4],columns:$$[$0-2],where:$$[$0]});break;case 395:this.$=new yy.Update({table:$$[$0-2],columns:$$[$0]});break;case 398:this.$=new yy.SetColumn({column:$$[$0-2],expression:$$[$0]});break;case 399:this.$=new yy.Delete({table:$$[$0-2],where:$$[$0]});break;case 400:this.$=new yy.Delete({table:$$[$0]});break;case 401:this.$=new yy.Insert({into:$$[$0-2],values:$$[$0]});break;case 402:this.$=new yy.Insert({into:$$[$0-2],"default":true});break;case 403:this.$=new yy.Insert({into:$$[$0-5],columns:$$[$0-3],values:$$[$0]});break;case 404:this.$=new yy.Insert({into:$$[$0-1],select:$$[$0]});break;case 405:this.$=new yy.Insert({into:$$[$0-4],columns:$$[$0-2],select:$$[$0]});break;case 408:this.$=[$$[$0-1]];break;case 411:this.$=$$[$0-4];$$[$0-4].push($$[$0-1]);break;case 412:case 413:case 415:case 423:this.$=$$[$0-2];$$[$0-2].push($$[$0]);break;case 424:this.$=new yy.CreateTable({table:$$[$0-4]});yy.extend(this.$,$$[$0-7]);yy.extend(this.$,$$[$0-6]);yy.extend(this.$,$$[$0-5]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0]);break;case 425:this.$=new yy.CreateTable({table:$$[$0]});yy.extend(this.$,$$[$0-3]);yy.extend(this.$,$$[$0-2]);yy.extend(this.$,$$[$0-1]);break;case 427:this.$={"class":true};break;case 437:case 438:this.$={temporary:true};break;case 440:this.$={ifnotexists:true};break;case 441:this.$={columns:$$[$0-2],constraints:$$[$0]};break;case 442:this.$={columns:$$[$0]};break;case 443:this.$={as:$$[$0]};break;case 444:case 468:this.$=[$$[$0]];break;case 446:case 447:case 448:case 449:case 450:$$[$0].constraintid=$$[$0-1];this.$=$$[$0];break;case 453:this.$={type:"CHECK",expression:$$[$0-1]};break;case 454:this.$={type:"PRIMARY KEY",columns:$$[$0-1],clustered:($$[$0-3]+"").toUpperCase()};break;case 455:this.$={type:"FOREIGN KEY",columns:$$[$0-5],fktable:$$[$0-2],fkcolumns:$$[$0-1]};break;case 456:case 483:case 515:case 548:case 566:case 569:case 586:this.$=$$[$0-1];break;case 461:this.$={type:"UNIQUE",columns:$$[$0-1],clustered:($$[$0-3]+"").toUpperCase()};break;case 470:this.$=new yy.ColumnDef({columnid:$$[$0-2]});yy.extend(this.$,$$[$0-1]);yy.extend(this.$,$$[$0]);break;case 471:this.$=new yy.ColumnDef({columnid:$$[$0-1]});yy.extend(this.$,$$[$0]);break;case 472:this.$=new yy.ColumnDef({columnid:$$[$0],dbtypeid:""});break;case 473:this.$={dbtypeid:$$[$0-5],dbsize:$$[$0-3],dbprecision:+$$[$0-1]};break;case 474:this.$={dbtypeid:$$[$0-3],dbsize:$$[$0-1]};break;case 475:this.$={dbtypeid:$$[$0]};break;case 476:this.$={dbtypeid:"ENUM",enumvalues:$$[$0-1]};break;case 477:case 659:this.$=+$$[$0];break;case 479:this.$=undefined;break;case 481:yy.extend($$[$0-1],$$[$0]);this.$=$$[$0-1];break;case 484:this.$={primarykey:true};break;case 485:case 486:this.$={foreignkey:{table:$$[$0-1],columnid:$$[$0]}};break;case 487:this.$={auto_increment:true};break;case 488:this.$={identity:{value:$$[$0-3],step:$$[$0-1]}};break;case 489:this.$={identity:{value:1,step:1}};break;case 490:this.$={"default":$$[$0]};break;case 491:this.$={"default":$$[$0-1]};break;case 492:this.$={"null":true};break;case 493:this.$={notnull:true};break;case 494:this.$={check:$$[$0]};break;case 495:this.$={unique:true};break;case 496:this.$=new yy.DropTable({table:$$[$0],type:$$[$