mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-17 22:36:01 +00:00
31 lines
797 B
JavaScript
31 lines
797 B
JavaScript
const SqlDumper = require('../default/SqlDumper');
|
|
|
|
class PostgreDumper extends SqlDumper {
|
|
/** @param type {import('dbgate-types').TransformType} */
|
|
transform(type, dumpExpr) {
|
|
switch (type) {
|
|
case 'GROUP:YEAR':
|
|
case 'YEAR':
|
|
this.put('^extract(^year ^from %c)', dumpExpr);
|
|
break;
|
|
case 'MONTH':
|
|
this.put('^extract(^month ^from %c)', dumpExpr);
|
|
break;
|
|
case 'DAY':
|
|
this.put('^extract(^day ^from %c)', dumpExpr);
|
|
break;
|
|
case 'GROUP:MONTH':
|
|
this.put("^to_char(%c, '%s')", dumpExpr, 'YYYY-MM');
|
|
break;
|
|
case 'GROUP:DAY':
|
|
this.put("^to_char(%c, '%s')", dumpExpr, 'YYYY-MM-DD');
|
|
break;
|
|
default:
|
|
dumpExpr();
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
module.exports = PostgreDumper;
|