以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  怎么给数据分级别  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=79235)

--  作者:fubblyc
--  发布时间:2015/12/27 12:49:00
--  怎么给数据分级别
各位老师好,有一段时间没弄数据库,忘了这个怎么写了。
就是把数据进行分级,如下图:字段 消费次数,想要生成另一个字段 次数级别,内容是根据 消费次数 这个字段生成,规则比如::1~3 次,1级别,4~8次  2级别,8次以上,3级别。 哈哈,忘了怎么写了。

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20151227124519.png
图片点击可在新窗口打开查看


--  作者:大红袍
--  发布时间:2015/12/27 13:13:00
--  

参考 http://www.baidu.com/baidu?wd=sqlserver+case+when&tn=monline_4_dg

 

 


--  作者:fubblyc
--  发布时间:2015/12/27 13:25:00
--  
好,谢谢 大红袍 老师。研究中。。之前写过,只是好久没弄,给忘了。。
--  作者:fubblyc
--  发布时间:2015/12/27 15:27:00
--  
我这样做了:
CASE [消费次数] 
when [消费次数]>=10 then \'高\'
when [消费次数]<=3 then \'低\'
else \'中\'
as \'次数级别\'
 
提示这样的错误,不知道哪里错了
[Err] 42000 - [SQL Server]\'>\' 附近有语法错误。 

--  作者:fubblyc
--  发布时间:2015/12/27 15:33:00
--  
CASE [消费次数]
when [消费次数]>=\'10\' then \'高\'
when [消费次数]>=\'3\' and [消费次数]<\'10\' then \'中\'
else \'低\'
as \'次数级别\'

给 10  等具体数字 加上 单引号 也还是同样的问题

--  作者:大红袍
--  发布时间:2015/12/27 15:35:00
--  
(CASE when [消费次数]>=10 then \'高\'
when [消费次数]<=3 then \'低\'
else \'中\') as \'次数级别\'

--  作者:fubblyc
--  发布时间:2015/12/27 15:55:00
--  
奇怪,怎么老是不正确:

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20151227155554.png
图片点击可在新窗口打开查看


--  作者:fubblyc
--  发布时间:2015/12/27 15:58:00
--  
我这样写的:
(CASE [消费次数]
when [消费次数]>=10 then \'高\'
when [消费次数]>=3 and [消费次数]<10 then \'中\'
else \'低\' end )
as [次数级别]



--  作者:大红袍
--  发布时间:2015/12/27 15:59:00
--  
看6楼啊
--  作者:fubblyc
--  发布时间:2015/12/27 16:16:00
--  
照6楼这样子:(CASE 
when [消费次数]>=10 then \'高\'
when [消费次数]>=3 and [消费次数]<10 then \'中\'
else \'低\' end )
as [次数级别]

提示:[Err] 42S22 - [SQL Server]列名 \'消费次数\' 无效。
42S22 - [SQL Server]列名 \'消费次数\' 无效。
42S22 - [SQL Server]列名 \'消费次数\' 无效。

消费次数 是这样来的:
COUNT (DISTINCT sql42988.[消费记录].[消费时间]) AS [消费次数],