SqlServer 基础知识 数据检索、查询排序语句

复制代码 代码如下:

–执行顺序 From Where Select

select * from

(select sal as salary,comm as commission from emp ) x where salary<5000

–得出 Name Work as a Job

select ename +’ Work as a’+job as msg from emp where deptno=10

–如果员工工资小于2000返回UnderPaid 大于等于4k 返回OverPaid 之间返回OK

select ename,sal,

case when sal<2000 then ‘UnderPaid’

when sal>=4000 then ‘OverPaid’

else

‘OK’

end

from emp

–从表中随机返回N条记录 newid()

–order by 字句中指定数字常量时,是要求根据select列表中相应位置的列排序

–order by 字句中用函数时,则按函数在没一行计算结果排序

select top 5 ename from emp order by newid()

–找空值is null

select * from emp where comm is null

–将空值转换为实际值

–解释:返回其参数中第一个非空表达式

–coalesce 联合,合并,结合.英音:[,kəuə’les]美音:[,koə’lɛs]

select coalesce(comm, 1),empNo from emp

–按模式搜索

–返回匹配特定子串或模式的行

select ename,job

from emp

where deptno in(10,20)

–按子串排序 按照职位字段的 最后两个字符排序

select ename, job from emp order by substring(job,len(job)-2,2)

–select top 2 len(job)-2 from emp

–select top 2 job from emp

–处理排序空值 [只能是大于0]

select ename ,sal,comm

from emp

order by 1 desc

— 以降序或升序方式排序非空值,将空值放到最后,可以用case

select ename,sal,comm from

(

select ename ,sal,comm ,

case when comm is null then 0 else 1 end as A

from emp

) x

order by A desc ,comm desc

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐