加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 如何将数据分组到Microsoft SQL中的存储区

发布时间:2020-12-12 06:27:15 所属栏目:MsSql教程 来源:网络整理
导读:目前我的SQL语句如下 SELECT NAME,ROUND([DR# BASE]/DAYS_WORKED,0) AS 'BASE/DAY'FROM MYTABLE 输出数据如下所示 NAME BASE/DAYJames 300Jane 310Jim 313John 325Jonah 400 是否有一个SQL语句使输出看起来像下面这样? NAME BUCKET BASE/DAYJames 300 = 325
目前我的SQL语句如下
SELECT NAME,ROUND([DR# BASE]/DAYS_WORKED,0) AS 'BASE/DAY'
FROM MYTABLE

输出数据如下所示

NAME    BASE/DAY
James   300
Jane    310
Jim 313
John    325
Jonah   400

是否有一个SQL语句使输出看起来像下面这样?

NAME    BUCKET  BASE/DAY
James   300 <= 325  300
Jane    300 <= 325  310
Jim 300 <= 325  313
John    300 <= 325  325
Johnny  325 <= 350  329
Jonah   350 <= 400  400

解决方法

SELECT NAME,CASE WHEN [BASE/DAY] <= 325 THEN '300 <= 325'
     WHEN [BASE/DAY] <= 350 THEN '325 <= 350'
     WHEN [BASE/DAY] <= 400 THEN '350 <= 400'
END AS BUCKET,[BASE/DAY]
FROM
(
    SELECT NAME,0) AS 'BASE/DAY' FROM MYTABLE
) T
ORDER BY 1,2,3

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读