You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Druid原生查询如何按非时间戳列排序?Scan查询自定义排序实现方法

Druid Scan查询自定义排序实现方案

核心修改逻辑如下:

  • 关闭Legacy模式:原生Scan查询的Legacy模式仅支持按时间戳默认排序,无法自定义排序规则,需要将原配置中的legacy参数从true改为false
  • 新增过滤规则:对应SQL中WHERE value > 200的条件,添加filter配置项实现数值过滤
  • 新增排序规则:添加orderBys配置项,指定按value字段的升/降序排序
  • 全列返回:如果需要返回表中所有列,无需配置columns参数即可默认返回全列,也可手动指定列名控制返回范围

完整的Scan查询配置示例如下:

{
  "queryType": "scan",
  "dataSource": "Data",
  "intervals": "1000/2000",
  "limit": 10,
  "legacy": false,
  "filter": {
    "type": "greater",
    "column": "value",
    "value": 200
  },
  "orderBys": [
    {
      "column": "value",
      "order": "ascending"
    }
  ]
}

如果可以使用Druid SQL查询,直接执行如下SQL即可达到效果(你示例中的SQL默认按第一列__time排序,已调整为按value字段排序):

SELECT __time, value, company, count
FROM shares
WHERE value > 200
ORDER BY value ASC

内容的提问来源于stack exchange,提问作者MarcinW

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 21:36:04