黑马程序员_SQL 函数

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

 

l 数字函数:

ABC():求绝对值。

CEILING():舍入到最大整数。Ceiling:天花板

FLOOR():舍入到最小整数。Floor:地板

ROUND():四舍五入。Round(3.1525,2)

Len():字符串长度。Len('abcd')

LTRIM():去掉左边的空格。

RTRIM():去掉右边的空格。

LTRIM(RTRIM()):去掉两边的空格

SUBSTRING():截取自字符串。select SUBSTRING('abcdef00123',2,3)→bcd

GETDATE():取得当前日期时间。select Getdate()

DATEDIFF():计算时间差。select DateDiff(hh,getdate(),DateAdd(day,-5,Getdate()))

DATEPART():。取出日期特定部分。SELECT DatePart(year,getdate()) as 年

l 类型转换:

CASTselect cast('2010-10-10' as datetime)

CONVERTselect convert(datetime,'2009-09-09')

l 空值处理函数:

ISNULL(FName,'佚名'):如果为空值,则返回佚名,不为空则返回FName字段

例子:

SELECT ISNULL(FName,'佚名') as 姓名from T_Employee

l CASE函数用法:

单值判断1

CASE expression

WHEN value1 THEN returnvalue1

WHEN value2 THEN returnvalue2

WHEN value3 THEN returnvalue3

ELSE defaultreturnvalue

END

例子:

select FName,

(

case FLevel

when 1 then '普通客户'

when 2 then '会员'

when 3 then 'VIP'

else '未知客户类型'

end

) as 客户类型

From T_Customer

范围判断2:

select FName,

(

case

when FSalary<2000 then '低收入'

when FSalary>=2000 and FSalary<=5000 then '中等收入'

else '高收入'

end

) as 收入水平

from T_Employee

l 索引Index

索引就像词典里的目录,可以提高检索的速度。

使用索引能提高查询效率,但是索引也要占据空间,而且添加、更新、删除数据的时候也要同步更新索引,因此会降低InsertUpdateDelete的速度。只在经常检索的字段上(where)创建索引。

注意:即使创建了索引,任有可能全盘扫描,如Like、函数、类型转换等。

l 表连接Join

select o.BillNo,c.Name,c.Age

From T_Orders as o join T_Customers as c on o.CustomerId=c.Id

where c.Age>15

l Row_Number():加行号,取出某些行号,可用于分页

select * from

(

select Row_Number() over(order by FSalary DESC) as rownum,

FNumber,FName,FSalary,FAge From T_Employee

) as e1

where e1.rownum>=and e1.rownum<=5

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值