Skip to content
This repository was archived by the owner on Dec 11, 2022. It is now read-only.

Commit 9c6cc71

Browse files
authored
Merge pull request #222 from doitintl/issue-216-2
More raw SQL fixes
2 parents 4f9ccfb + 78329fc commit 9c6cc71

File tree

4 files changed

+31
-14
lines changed

4 files changed

+31
-14
lines changed

dist/module.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59668,6 +59668,13 @@ function () {
5966859668
}
5966959669

5967059670
col = splitFrom[i].substring(0, field).trim().replace("`", "").replace("`", "");
59671+
col = col.replace(/\$__timeGroupAlias\(/g, "");
59672+
col = col.replace(/\$__timeGroup\(/g, "");
59673+
col = col.replace(/\$__timeFilter\(/g, "");
59674+
col = col.replace(/\$__timeFrom\(/g, "");
59675+
col = col.replace(/\$__timeTo\(/g, "");
59676+
col = col.replace(/\$__millisTimeTo\(/g, "");
59677+
col = col.replace(/\$__millisTimeFrom\(/g, "");
5967159678

5967259679
for (var _i = 0, timeFields_1 = timeFields; _i < timeFields_1.length; _i++) {
5967359680
var fl = timeFields_1[_i];

dist/module.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/bigquery_query.ts

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import _ from "lodash";
2-
import {BigQueryDatasource} from "./datasource";
2+
import { BigQueryDatasource } from "./datasource";
33

44
export default class BigQueryQuery {
55
public static quoteLiteral(value) {
@@ -44,8 +44,12 @@ export default class BigQueryQuery {
4444
? q.match(/(\$__timeGroupAlias\(([\w._]+,)).*?(?=\))/g)
4545
: q.match(/(\$__timeGroup\(([\w_.]+,)).*?(?=\))/g);
4646
if (res) {
47-
interval[0] = res[0].split(",")[1] ? res[0].split(",")[1].trim() : res[0].split(",")[1];
48-
interval[1] = res[0].split(",")[2] ? res[0].split(",")[2].trim() : res[0].split(",")[2];
47+
interval[0] = res[0].split(",")[1]
48+
? res[0].split(",")[1].trim()
49+
: res[0].split(",")[1];
50+
interval[1] = res[0].split(",")[2]
51+
? res[0].split(",")[2].trim()
52+
: res[0].split(",")[2];
4953
}
5054
return interval;
5155
}
@@ -117,7 +121,7 @@ export default class BigQueryQuery {
117121
target.metricColumn = target.metricColumn || "none";
118122
target.group = target.group || [];
119123
target.where = target.where || [
120-
{ type: "macro", name: "$__timeFilter", params: [] },
124+
{ type: "macro", name: "$__timeFilter", params: [] }
121125
];
122126
target.select = target.select || [
123127
[{ type: "column", params: ["-- value --"] }]
@@ -316,7 +320,6 @@ export default class BigQueryQuery {
316320
return query;
317321
}
318322

319-
320323
public buildValueColumn(column) {
321324
const columnName = _.find(column, (g: any) => g.type === "column");
322325
let query = BigQueryQuery.quoteFiledName(columnName.params[0]);
@@ -659,15 +662,9 @@ export default class BigQueryQuery {
659662
" AND " +
660663
to;
661664
const fromRange =
662-
BigQueryQuery.quoteFiledName(this.target.timeColumn) +
663-
" > " +
664-
from +
665-
" ";
665+
BigQueryQuery.quoteFiledName(this.target.timeColumn) + " > " + from + " ";
666666
const toRange =
667-
BigQueryQuery.quoteFiledName(this.target.timeColumn) +
668-
" < " +
669-
to +
670-
" ";
667+
BigQueryQuery.quoteFiledName(this.target.timeColumn) + " < " + to + " ";
671668
q = q.replace(/\$__timeFilter\(([\w_.]+)\)/g, range);
672669
q = q.replace(/\$__timeFrom\(([\w_.]+)\)/g, fromRange);
673670
q = q.replace(/\$__timeTo\(([\w_.]+)\)/g, toRange);

src/datasource.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,19 @@ export class BigQueryDatasource {
7171
.trim()
7272
.replace("`", "")
7373
.replace("`", "");
74+
col = col.replace(
75+
/\$__timeGroupAlias\(/g,
76+
""
77+
);
78+
col = col.replace(
79+
/\$__timeGroup\(/g,
80+
""
81+
);
82+
col = col.replace(/\$__timeFilter\(/g, "");
83+
col = col.replace(/\$__timeFrom\(/g, "");
84+
col = col.replace(/\$__timeTo\(/g, "");
85+
col = col.replace(/\$__millisTimeTo\(/g, "");
86+
col = col.replace(/\$__millisTimeFrom\(/g, "");
7487
for (const fl of timeFields) {
7588
if (fl.text === col) {
7689
return fl;

0 commit comments

Comments
 (0)