最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

如何从查询中删除CubeJS默认的Group By子句

IT培训 admin 15浏览 0评论

如何从查询中删除CubeJS默认的Group By子句

当我们在其中运行任何查询时,

CubeJS默认会应用Group By子句。

例如,下面是我对雇员多维数据集的JSON查询:

{
  "dimensions": [
    "Employee.date",
    "Employee.state",
    "Employee.id"
  ],
  "timeDimensions": [],
  "filters": []
}

当我在CubeJS中的JSON查询上运行时,它将在SQL下运行:

SELECT
  `employee`.updatedAt `employee__date`,
  `employee`.state `employee__state`,
  `employee`.EmpId `employee__id`
FROM
  DEMO.Employee AS `employee`
GROUP BY
  1,
  2,
  3
ORDER BY
  1 ASC
LIMIT
  10000

下面供参考的是Employee我拥有的多维数据集:

cube(`Employee`, {
  sql: `SELECT * FROM DEMO.Employee `,
  title: `Employee`,

  measures: {
    count: {
      type: `count`
    }
  },
  dimensions: {
    id: {
      sql: `EmpId`,
      type: `string`
    },
    date: {
      sql: `updatedAt`,
      type: `time`
    },
    state: {
      sql: `state`,
      type: `string`
    }
  }
});

如果期望在SQL下,我需要创建什么JSON查询:

SELECT
  `employee`.updatedAt `employee__date`,
  `employee`.state `employee__state`,
  `employee`.EmpId `employee__id`
FROM
  DEMO.Employee AS `employee`
WHERE
  `employee`.updatedAt ` BETWEEN '2019-01-01' AND '2019-05-01'
LIMIT
  10000

OR

是否可以从CubeJS本身生成的SQL查询中删除Group By子句。

回答如下:

自0.10.62开始具有ungrouped查询属性:https://cube.dev/docs/query-format#query-properties。在您的情况下,可以使用以下查询:

{
  "dimensions": [
    "Employee.date",
    "Employee.state",
    "Employee.id"
  ],
  "timeDimensions": [],
  "filters": [],
  "ungrouped": true
}

如何从查询中删除CubeJS默认的Group By子句

当我们在其中运行任何查询时,

CubeJS默认会应用Group By子句。

例如,下面是我对雇员多维数据集的JSON查询:

{
  "dimensions": [
    "Employee.date",
    "Employee.state",
    "Employee.id"
  ],
  "timeDimensions": [],
  "filters": []
}

当我在CubeJS中的JSON查询上运行时,它将在SQL下运行:

SELECT
  `employee`.updatedAt `employee__date`,
  `employee`.state `employee__state`,
  `employee`.EmpId `employee__id`
FROM
  DEMO.Employee AS `employee`
GROUP BY
  1,
  2,
  3
ORDER BY
  1 ASC
LIMIT
  10000

下面供参考的是Employee我拥有的多维数据集:

cube(`Employee`, {
  sql: `SELECT * FROM DEMO.Employee `,
  title: `Employee`,

  measures: {
    count: {
      type: `count`
    }
  },
  dimensions: {
    id: {
      sql: `EmpId`,
      type: `string`
    },
    date: {
      sql: `updatedAt`,
      type: `time`
    },
    state: {
      sql: `state`,
      type: `string`
    }
  }
});

如果期望在SQL下,我需要创建什么JSON查询:

SELECT
  `employee`.updatedAt `employee__date`,
  `employee`.state `employee__state`,
  `employee`.EmpId `employee__id`
FROM
  DEMO.Employee AS `employee`
WHERE
  `employee`.updatedAt ` BETWEEN '2019-01-01' AND '2019-05-01'
LIMIT
  10000

OR

是否可以从CubeJS本身生成的SQL查询中删除Group By子句。

回答如下:

自0.10.62开始具有ungrouped查询属性:https://cube.dev/docs/query-format#query-properties。在您的情况下,可以使用以下查询:

{
  "dimensions": [
    "Employee.date",
    "Employee.state",
    "Employee.id"
  ],
  "timeDimensions": [],
  "filters": [],
  "ungrouped": true
}
发布评论

评论列表 (0)

  1. 暂无评论