SQL检索记录相关整理

前言

本文章是SQL Cookbook中文版 (莫利纳罗 著) 的读书笔记,本文章将书中提及到的知识用代码整合在一起并进行分析。

完整代码

以下是整段代码

select top 3 name+'是'+m+'的' as msg,
	case when m ='男' then 'ok'
		else 'no'
	end as status
from(
select top 5 学号 as id,成绩 as grade,性别 as m,姓名 as name
	from student 
	order by newid()
) X
where id>0 

分段代码分析

select top 3 name+'是'+m+'的' as msg,
	case when m ='男' then 'ok'
		else 'no'
	end as status
  • 单从代码上看top x指的是选出数据库的前三项,与后面的order by newid()就是随机选出数据库的三项
  • name+'是'+m+'的' as msg是将这段序列合并并创建一个名为msg的新序列
  • case和C\C++中的switch类似,就是进行多重条件判断,如果条件结果为真,那么就执行then后面的语句
  • end as status创建了一个名为 “status” 的新列,根据 “m” 的值进行判断,如果 “m” 为 ‘男’,则 “status” 的值为 ‘ok’,否则为 ‘no’。我们在使用case的时候可以用end来结束语句,并将case的结果返回到新创建的列status
from(
select top 5 学号 as id,成绩 as grade,性别 as m,姓名 as name
	from student 
	order by newid()
) X

from导入

from类似于python中的导入模块,这里是导入数据库,我们可以直接导入数据库from test,也可以如上文所示将数据库进行修改再导入。
注意:
上文代码中的修改并不是真正意义上的修改

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值