extra-sql.web
Version:
SQL is designed for managing or stream processing data in an RDBMS {web}.
1 lines • 5.15 kB
JavaScript
function getDefaultExportFromCjs(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var hasRequired_build,_build={};function require_build(){if(hasRequired_build)return _build;function t(t,e,n,r=0,i){const u=[],l=Array.isArray(i);r=r||(l?i.length:0);for(const n in t){const o=t[n];u.push(e.replace(/%k/g,n).replace(/%v/g,String(o)).replace(/%i/g,String(r++))),l&&i&&i.push(o)}return u.join(n)}function e(t,e="",n=0){if(0===n){for(const n in t)e+=`"${n}", `;e=e.endsWith(", ")?e.substring(0,e.length-2):e,e+=") VALUES\n("}for(const n in t)e+=null==t[n]?"NULL, ":`$$${t[n]}$$, `;return e=e.endsWith(", ")?e.substring(0,e.length-2):e,e+="),\n("}function n(t,e,n={},r=""){r+=`CREATE TABLE IF NOT EXISTS "${t}" (`;for(const t in e)r+=`"${t}" ${e[t]}, `;return n.pk&&(r+=`PRIMARY KEY("${n.pk}"), `),r.replace(/, $/,"")+");\n"}function r(t,e,n,r={},i=""){return i+=`CREATE INDEX IF NOT EXISTS "${t}" ON "${e}" `,r.method&&(i+=`USING ${r.method} `),i+`(${n});\n`}function i(t,e,n=null,r=""){return r+=`CREATE OR REPLACE VIEW "${t}" AS ${e};\n`}function u(t,n,r={},i=""){let u=-1;i+=`INSERT INTO "${t}" (`;for(const t of n)i=e(t,i,++u);return i=i.replace(/\),\n\($/,"")+")",r.pk&&(i+=`\nON CONFLICT ("${r.pk}") DO NOTHING`),i+";\n"}function l(t,n,r={},i=""){let u=-1;return i+=`INSERT INTO "${t}" (`,new Promise(((t,l)=>{n.on("error",l),n.on("data",(t=>{i=e(t,i,++u)})),n.on("end",(()=>{i=i.replace(/\),\n\($/,"")+")",r.pk&&(i+=`\nON CONFLICT ("${r.pk}") DO NOTHING`),t(i+";\n")}))}))}function o(t,e,n={},u=""){if(n.tsvector){const e=function(t){let e="";for(const n in t)t[n]&&(e+=`setweight(to_tsvector('english', "${n}"), '${t[n]}')||`);return e.replace(/\|\|$/,"")}(n.tsvector);u+=i(t+"_tsvector",`SELECT *, ${e} AS "tsvector" FROM "${t}"`),n.index&&(u+=r(t+"_tsvector_idx",t,`(${e})`,{method:"GIN"}))}if(n.index)for(const i in e){if(null==e[i]||i===n.pk)continue;u+=r(`${t}_${i.replace(/\W+/g,"_").toLowerCase()}_idx`,t,`"${i}"`)}return u}function a(t,e,r=null,i={},l=""){return l=n(t,e,i,l),r&&(l=u(t,r,i,l)),o(t,e,i,l)}return hasRequired_build=1,Object.defineProperty(_build,"__esModule",{value:!0}),_build.deleteData=_build.insertIntoData=_build.selectData=_build.updateData=_build.createTableData=_build.matchTsquery=_build.selectTsquery=_build.tableExists=_build.setupTable=_build.setupTableIndex=_build.insertIntoStream=_build.insertInto=_build.createView=_build.createIndex=_build.createTable=_build.OPERAND_COUNT=_build.OPERATORS=void 0,_build.OPERATORS=new Set(["+","-","*","/","%","&","|","^","=",">","<",">=","<=","<>","+=","-=","*=","/=","%=","&=","^=","|=","ALL","AND","ANY","BETWEEN","EXISTS","IN","LIKE","NOT","OR","SOME"]),_build.OPERAND_COUNT=new Map([["+",2],["-",2],["*",2],["/",2],["%",2],["&",2],["|",2],["^",2],["=",2],[">",2],["<",2],[">=",2],["<=",2],["<>",2],["+=",2],["-=",2],["*=",2],["/=",2],["%=",2],["&=",2],["^=",2],["|=",2],["ALL",2],["AND",2],["ANY",2],["BETWEEN",3],["EXISTS",1],["IN",2],["LIKE",2],["NOT",1],["OR",2],["SOME",2]]),_build.createTable=n,_build.createIndex=r,_build.createView=i,_build.insertInto=u,_build.insertIntoStream=l,u.stream=l,_build.setupTableIndex=o,_build.setupTable=a,a.index=o,_build.tableExists=function(t){return`SELECT EXISTS (SELECT 1 FROM information_schema.tables WHERE table_name='${t}');\n`},_build.selectTsquery=function(t,e,n='"tsvector"',r={}){const i=r.columns||"*",u=r.normalization||0;let l=`SELECT ${i} FROM "${t}" WHERE ${n} @@ plainto_tsquery('${e}')`;return r.order&&(l+=` ORDER BY ts_rank(${n}, plainto_tsquery('${e}'), ${u}) DESC`),r.limit&&(l+=` LIMIT ${r.limit}`),l+=";\n",l},_build.matchTsquery=function(t,e,n='"tsvector"',r={}){const i=r.columns||"*",u=r.normalization||0;let l="";for(let o=e.length;o>0;o--){const a=e.slice(0,o).join(" ").replace(/([\'\"])/g,"$1$1");l+=`SELECT ${i}, '${o}'::INT AS "matchTsquery" FROM "${t}"`,l+=` WHERE ${n} @@ plainto_tsquery('${a}')`,r.order&&(l+=` ORDER BY ts_rank(${n}, plainto_tsquery('${a}'), ${u}) DESC`),l+=" UNION ALL\n"}return l=l.substring(0,l.length-11),r.limit&&(l+=` LIMIT ${r.limit}`),l+=";\n",l},_build.createTableData=function(e,n,r){return{query:`CREATE TABLE IF NOT EXISTS "${e}" (${t(n,'"%k" %v',", ")}`+(r?`, PRIMARY KEY(${t((i=r,Array.isArray(i)?i:null==i||"string"==typeof i||"function"!=typeof i[Symbol.iterator]?[i]:Array.from(i)),'"%v"',", ")})`:"")+");",data:[]};var i},_build.updateData=function(e,n,r,i="=",u="AND"){const l=[],o=t(n||{},'"%k" = $%i',", ",1,l),a=t(r||{},`"%k" ${i} $%i`,` ${u} `,l.length+1,l);return{query:`UPDATE "${e}" SET ${o}${a?" WHERE "+a:""};`,data:l}},_build.selectData=function(e,n,r="=",i="AND"){const u=[],l=t(n||{},`"%k" ${r} $%i`,` ${i} `,1,u);return{query:`SELECT * FROM "${e}"${l?" WHERE "+l:""};`,data:u}},_build.insertIntoData=function(e,n){const r=[];return{query:`INSERT INTO "${e}" (${t(n[0]||{},'"%k"',", ",1,r)}) VALUES (${t(r,"$%i",", ",1)});`,data:r}},_build.deleteData=function(e,n,r="=",i="AND"){const u=[],l=t(n||{},`"%k" ${r} $%i`,` ${i} `,1,u);return{query:`DELETE FROM "${e}"${l?" WHERE "+l:""};`,data:u}},_build}var _buildExports=require_build(),index=getDefaultExportFromCjs(_buildExports);export{index as default};