mirror of
https://github.com/grafana/grafana.git
synced 2025-09-22 17:42:53 +08:00
use unixEpochGroup macro for unix timestamp
This commit is contained in:
@ -99,6 +99,7 @@ export default class PostgresQuery {
|
||||
buildTimeColumn(alias = true) {
|
||||
let timeGroup = this.hasTimeGroup();
|
||||
let query;
|
||||
let macro = '$__timeGroup';
|
||||
|
||||
if (timeGroup) {
|
||||
let args;
|
||||
@ -107,11 +108,13 @@ export default class PostgresQuery {
|
||||
} else {
|
||||
args = timeGroup.params[0];
|
||||
}
|
||||
if (alias) {
|
||||
query = '$__timeGroupAlias(' + this.target.timeColumn + ',' + args + ')';
|
||||
} else {
|
||||
query = '$__timeGroup(' + this.target.timeColumn + ',' + args + ')';
|
||||
if (['int4', 'int8', 'float4', 'float8', 'numeric'].indexOf(this.target.timeColumnType) > -1) {
|
||||
macro = '$__unixEpochGroup';
|
||||
}
|
||||
if (alias) {
|
||||
macro += 'Alias';
|
||||
}
|
||||
query = macro + '(' + this.target.timeColumn + ',' + args + ')';
|
||||
} else {
|
||||
query = this.target.timeColumn;
|
||||
if (alias) {
|
||||
|
@ -35,6 +35,13 @@ describe('PostgresQuery', function() {
|
||||
|
||||
query = new PostgresQuery({ timeColumn: 'time', group: [{ type: 'time', params: ['5m', 'NULL'] }] }, templateSrv);
|
||||
expect(query.buildTimeColumn()).toBe('$__timeGroupAlias(time,5m,NULL)');
|
||||
|
||||
query = new PostgresQuery(
|
||||
{ timeColumn: 'time', timeColumnType: 'int4', group: [{ type: 'time', params: ['5m', 'none'] }] },
|
||||
templateSrv
|
||||
);
|
||||
expect(query.buildTimeColumn()).toBe('$__unixEpochGroupAlias(time,5m)');
|
||||
expect(query.buildTimeColumn(false)).toBe('$__unixEpochGroup(time,5m)');
|
||||
});
|
||||
|
||||
describe('When generating metric column SQL', function() {
|
||||
|
Reference in New Issue
Block a user