您的位置:首页 > 数据库

MS SQL server学习笔记

2011-10-01 23:55 381 查看
select age,count(*) from employee group by age having salary>2000
//having 是对分组后的信息的过滤,能用的列和select中能用的列是一样的

select top 3 from person2 order by age desc

alter table employee add company vchar(20);//增加字段

[align=left]select distinct company from person2;//消除重复的数据[/align]
[align=left]
[/align]
[align=left]union //联合查询结果,数据列数一致,类型相同,默认合并重复的数据[/align]
[align=left]union all //不合并重复的数据[/align]
[align=left]
[/align]
[align=left]数据类型转换[/align]
[align=left]cast [/align]
[align=left]convert[/align]
[align=left]
[/align]
[align=left]空置处值函数[/align]
[align=left]isnull(name,'dc')[/align]
[align=left]
[/align]
[align=left]单值判断,相当于switch[/align]
[align=left]case expression[/align]
[align=left]when value1 then returnvalue1[/align]
[align=left]when value2 then returnvalue2[/align]
[align=left]when value3 then returnvalue3[/align]
[align=left]else defaultreturnvalue[/align]
[align=left]end[/align]
[align=left]同时支持范围值[/align]
[align=left]
[/align]
[align=left]索引:,相当于创建目录[/align]
[align=left]全表扫描:select,效率最差[/align]
[align=left]能够提高查询效率,但是会占据空间,会降低insert,update,detete的速度[/align]
[align=left]只在经常检索的字段(where)上创建索引[/align]
[align=left]即使创建了索引,仍有可能全表扫描,比如like,函数,类型转换[/align]
[align=left]
[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  sql server insert table