尊重别人是一种美德,受人尊重是一种幸福。
一、查询一部分
1 eg 2 select studentName 学生姓名,address 地址 from student 3 where studentNO=2332
二、显示中文名
1 别名方案一 2 select msgAuthor as 留言人,msgContent as 留言内容 3 from Message 4 别名方案二 5 select 留言人=msgAuthor,留言内容=msgContent 6 from Message
三、将多列合并为一列
1 eg 2 select studentName+address as 学生姓名和地址 3 where student
四、常量列(一列都有这个值)
1 eg 2 select * ‘汉族’ as ‘民族’ 3 from student
五、关于top关键字
限制只检索前3条数据 eg select top 3 * from student 按主键 获取Student表中的前20%的数据 能大概推断表中总共的数据数 eg select top 20 percent * from student
六、Order by相关
1 默认按主键升序排序 2 select * from student 3 order by Gender desc 4 5 按照多列排序(先按年级,再按性别) 6 select * from student 7 order by GradeId asc,Gender desc
ASC:升序 DESC:降序
七、通配符
1、%:任意长度的任意字符,(包含0个)
2、_:任意的单个字符,只能是一个
3、[]:括号中所指定范围的一个字符
4、[^]:不在括号中所指定范围内的任意一个字符
八、字符串函数
(一)函数名称:CharIndex('str1','str2',index)//位置从开始
参数含义:
第一个参数:要查询的字符串
第二个参数:在哪个字符串中搜索
第三个参数:从str2的第几个字母开始搜索
注意点:如果在str2中没有找到str1,那么返回
1 eg 2 select charindex('s','S1是S2的基础,所以大家好好学',2)
(二)len():获取小括号中字符串的长度,空格也算一个字符长度
1 eg 2 select len('希望我们都好好的')
--注意点:如果内容以多个空格结尾,那么结尾的多个空格,是不计算长度的
1 eg 2 select len('我们都是好孩子 ')
(三)upper():将括号中出现的英文全部转换成大写
1 eg 2 select upper('i can speak english.') 3 select lower('I HAVE A DREAM') 4
(四)LTrim():清除括号中内容左边的空格(left:right)
1 eg 2 select ltrim(' 生活, ') 3 select rtrim(' 生活, ')
1 --既想移除左边空格,也想移除右边空格 2 select rtrim(ltrim(' 生活不是林黛玉, ')) 3 select ltrim(rtrim(' 你还好吧! '))
(五)substring('字符串',截取的位置,截取的长度)
1 eg 2 select substring('我是中国人,我爱自己伟大的祖国,真的',6,1)
(六)right():从字符串右边返回指定类型的字符
1 eg 2 select left('大家今天好像都没有交日记本,我去',3)
(七)replace('str1','要替换的字符','目标字符'):
1 eg 2 select replace('周杰伦,残疾人,','残疾','好')
(八)stuff('字符串',删除的起始位置,删除的长度,'插入的字符串')
1 eg 2 elect stuff('我爱你中国,我爱你故乡',4,2,'北京')
九、日期函数
(一)getdate():获取当前日期和时间
select getdate()
(二)dateadd(按年/月/日添加,增量,时间)
1 eg 2 select dateadd(yy,100,'2014-8-6') 3 select dateadd(year,-20,getdate())
(三)datediff(按年/月/日求差,小时间,大时间)
1 eg 2 select datediff(year,'1998-01-01',getdate())
(四)datename:获取某个日期是星期几
1 eg 2 select datename(dw,'2014-08-06')
(五).datepart(mm,日期):获取指定日期对应的年/月/日部分
1 eg 2 select datepart(yy,getdate())
十、数学函数
(一)rand():产生一个到之间的随机数
1 eg 2 select right(rand(),4) 3 Select rand()
(二)abs:取绝对值
1 eg 2 select abs(-10) 3 select abs(10)
(三)ceiling:天花板,你要看天花板,抬头,向上取整
1 eg 2 select ceiling(1.999991)
(四)power(5,2)求幂值
1 eg 2 select power(4,4)
(五)round:将一个数字四舍五入到指定精度
1 eg 2 select round(42.564,1)
(六)sign:如果括号中写的是一个正数,返回,如果是负数,返回-1
1 eg 2 select sign(20)
(七)sqrt()开平方
1 eg 2 select sqrt(9)
(八)floor:向下取整
1 eg 2 select floor(1.999999)
希望大家可以学到东西。