【问题标题】:How to retrieve the different range of values from database using SQL?如何使用 SQL 从数据库中检索不同范围的值?
【发布时间】:2016-01-31 15:06:05
【问题描述】:

我目前正在尝试使用 ajax 饼图工具检索光值并将它们排序到饼图中。我真的需要有关用于检索和计算不同值集的 SQL 语句的帮助。

这是我要检索的 3 组值:

1) 检索和计算 的 lightValues

2) 检索和计算 24 到 30 之间的 lightValues

3) 检索并计算大于 30 的 lightValues

饼图是我想要达到的结果。目前我正在使用原始数据来显示我想要实现的目标。

饼图图片:

数据库图片:

【问题讨论】:

  • 编辑您的问题并显示您想要获得的结果。
  • 我想要得到类似饼图的东西,我已经在上面发布了一张图片。

标签: sql sql-server tsql


【解决方案1】:

一种方式

select
    count(case when lightvalue < 24 then 1 end),
    count(case when lightvalue between 24 and 30 then 1 end),
    count(case when lightvalue > 30 then 1 end)
from tbl

【讨论】:

    【解决方案2】:

    你可以使用UNION ALL:

    SELECT 'less_than_24' AS group_name, COUNT(*) AS counter
    FROM table_name
    WHERE lightValue < 24
    UNION ALL
    SELECT 'from_24_to_30', COUNT(*) AS counter
    FROM table_name
    WHERE lightValue BETWEEN 24 AND 30
    UNION ALL
    SELECT 'more_than_30', COUNT(*) AS counter
    FROM table_name
    WHERE lightValue > 30;
    

    LiveDemo

    输出:

    ╔═══════════════╦═════════╗
    ║  group_name   ║ counter ║
    ╠═══════════════╬═════════╣
    ║ less_than_24  ║       4 ║
    ║ from_24_to_30 ║       2 ║
    ║ more_than_30  ║       2 ║
    ╚═══════════════╩═════════╝
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-24
      • 2020-04-29
      • 2017-10-22
      • 2016-03-17
      • 1970-01-01
      • 2020-04-28
      • 1970-01-01
      • 2018-04-22
      相关资源
      最近更新 更多