1、创建测试表,
create table test_person(id int, RMB int)
2、插入测试数据
insert into test_person values(1,180)
insert into test_person values(2,170)
insert into test_person values(3,290)
insert into test_person values(4,160)
insert into test_person values(5,299)
insert into test_person values(6,266)
insert into test_person values(7,155)
3、查询表中所有记录,select t.* from test_person t,
4、编写sql,汇总每个vip类型的用户数,
select vip_type, count(distinct id)
from (select case when RMB>100 and RMB<200 then 'VIP1' when RMB>200 then 'VIP2' end as vip_type, id
from test_person) t
group by vip_type
1、首先我们打开SQL Server Management Studio管理工具,点击【新建查询】,新增一个书写sql语句的窗口。2、在上一步打开的sql语句输入窗口,定义一个整数类型的变量,设置初始值等于10。
3、使用if条件语句,判断上面的临时变量是否等于10,如果等于就输出一行文字。
4、当上面的sql语句写完之后,点击顶部菜单的【执行】,就能运行当前窗口的sql语句了,此时可以看到下方输出了一行文字,刚好与if条件语句内部的内容一致,说明这个if条件判断成立。
建表,测试数据:
create table test(收款标志 int)
insert into test values (1)
insert into test values (1)
insert into test values (1)
commit
执行:
select casewhen a.cnt = b.cnt then
'未收款'
when a.cnt = d.cnt then
'已收款'
when c.cnt <> 0 then
'部分收款'
end 收款状态
from (select count(*) cnt from test) a,
(select count(*) cnt from test where 收款标志 = 1) b,
(select count(*) cnt from test where 收款标志 = 2) c,
(select count(*) cnt from test where 收款标志 = 3) d
结果:
然后你自己换点其他数据测试一下吧,思路就这么个思路了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)