SQL不熟函數(shù)代碼與通過一道建員工表代碼題,充分理解查詢“已按年齡排序的表”等題

字符串函數(shù):
lower(列名):轉(zhuǎn)為小寫
upper(列名):轉(zhuǎn)為大寫
charindex('要查的字符','列名'):返回字符所在的位置
len(列名):查詢指定列名的內(nèi)容長度
select len(name) from singer
replace(列名,舊內(nèi)容,新內(nèi)容):替換內(nèi)容
select sing_name,replace(sing_name,1,'') from singer
subString(列名,開始位置,長度):截取內(nèi)容
select sing_name,SUBSTRING(sing_name,2,2) from singer
reverse(列名):內(nèi)容翻轉(zhuǎn)
select reverse(name)from singer
數(shù)學(xué)函數(shù)
ceiling():向上取整
floor():向下取整
round():四舍五入
power():冪值
abs():絕對值
sqrt():平方根
時(shí)間函數(shù):
year():取年
month():取月
day():取日
dateadd(MM,1,列名):增加時(shí)間
? --聚合函數(shù)
? sum():求和
? avg():平均值
? max():最大值
? min():最小值
? count():求條數(shù)


create?table?EMP_DB(
EmpName?nvarchar(20)?not?null,
EmpSex?nvarchar(2)?check(Empsex='男'or?Empsex='女'),
EmpAge?int?check(Empage>0?and?Empage<=100),
address1?nvarchar(50),
tel?nvarchar(20),
E_mail?nvarchar(50),
EmpJoinTime?datetime?default(getdate())
)
??
???insert?into?EMP_DB?values('趙龍','男',25,'湖南省長沙市伍家?guī)X江南苑9棟203號','0731-4230123','zl@163.net','2005/10/5')
???insert?into?EMP_DB?values('李云','女',23,'湖南省長沙市東風(fēng)路東風(fēng)新村21棟502號','0731-4145268','zl@163.net','2003/7/3')
???insert?into?EMP_DB?values('孫一成','男',24,'湖南省株洲市601廠宿舍15棟308號','0732-8342567','zl@163.net','2002/2/11')
???insert?into?EMP_DB?values('林笑','男',27,'湖南省郴洲市人民醫(yī)院20棟301號','0731-4230123',null,'2006/1/5')
???insert?into?EMP_DB?values('衛(wèi)晴','女',23,'湖南省長沙市望月湖12棟403號','0731-4230123','zl@163.net','2007/3/5')
???insert?into?EMP_DB?values('張高','男',30,'湖南省株洲市601廠宿舍18棟122號','0731-4230123','zl@163.net','2004/2/11')
???select?*?from?EMP_DB
???--1.?查詢所有職員的所有信息
??????select?*?from?EMP_DB
--2.?查詢所有職員的姓名,電話,地址
select?EmpName?as?'姓名',tel?as?'電話',address1?as?'地址'from?EMP_DB
--3.?查詢所有女職員的詳細(xì)信息
select?*?from?EMP_DB?where?EmpSex='女'
--4.?查詢年齡在24到26歲之間的男職員的姓名,性別
select?empname?as?'姓名',empsex?as?'性別'?,empage?as?'年齡'from?EMP_DB
where?EmpAge?>=24?and?EmpAge<=26
--5.?查詢家住長沙的女職員的姓名,電話,地址
select?*?from?EMP_DB?where?address1
?like?'%長沙%'?and??empsex='女'
--6.?查詢李云,孫一成,林笑的電話,地址
select?empname?,tel?,address1?from?EMP_DB?where?EmpName='李云'?or?EmpName='孫一成'
?or?EmpName='林笑'
--7.?查詢郴洲和株洲的職員的姓名,性別,年齡
select?empname?as?'姓名',empsex?as?'性別',empage?as'年齡',address1?as?'地址'
from?EMP_DB?where?address1?like?'%郴洲%'?or?address1?like?'%株洲%'
--8.?查詢家住長沙,年齡在25到28歲之間的男職員的姓名
select?*?from?EMP_DB?where?address1?like?'%長沙%'?
and?EmpAge?>=25?and?EmpAge<28?and?EmpSex='男'
--9.?查詢郵件地址為空的職員
select?*?from?EMP_DB?where?E_mail?is?null
--10.根據(jù)員工的年齡進(jìn)行排序(從高到低),并給每個(gè)列取別名
select?* EmpAge?as?'年齡'?from?EMP_DB?order?by?EmpAge?desc
ASC 表示升序、DESC 表示降序(在SQL中,英文大小寫不重要,不加ASC或DESC的話,就默認(rèn)為升序)