在SqlServerd中使用的一部分做一个总结:
--基本格式 select * from tblclass --对于列进行限制 --格式一:取指定列 select cid,cname from TblClass select cname from TblClass --格式二:为列起别名as select cid as 编号,cname 名称,描述=cdescription from TblClass --对于行进行限制 --关键字top:表示取前n的数据 select top 2 * from TblClass select top 2 percent * from TblClass --关键字distinct:消除重复项 select cdescription from TblClass select distinct cdescription from TblClass --where子句 --查询编号大于5的班级 select * from TblClass where cid>5--比较运算符:> < >= <= <> != --查询班级编号在5至8之间的班级信息 select * from TblClass where cid>5 and cid<8--逻辑运算符:and(&&) or(||) not(!) --查询班级编号在5至8之间并且描述信息的字符个数大于3的班级信息 select * from TblClass where cid>5 and cid<8 and LEN(cDescription)>3 --查询班级编号在5至8之间或描述信息的字符个数大于3的班级信息 select * from TblClass where (cid>5 and cid<8) or (LEN(cDescription)>3)--运算符优先级 --not的优先级最高,仅次于小括号 --取范围,表示在一个连续的范围内between ... and ...[5,8] select * from TblClass where cid between 5 and 8 --============= select * from TblClass where (cid between 5 and 8) and (LEN(cDescription)>3) --in:取范围,表示一个不连续的范围 --查询编号为1,4,8的班级 select * from TblClass where cid=1 or cid=4 or cid=8 --========== select * from TblClass where cid in(1,4,8) --模糊查询:like _:任意一个字符 %:任意多个字符 --[]:显示一个连续区间 ^:放在[]中表示非 select * from TblClass where cDescription like '%赵一天%' --查询在描述中以'黑'开头并且是2个字符的信息 select * from TblClass where cDescription like '黑_' --查询描述中包含'%'的班级,转义:使用[]括起来 select * from TblClass where cDescription like '%[%]%' --[4-7]表示4,5,6,7 --[4,7]表示4,7 --[47]表示4,7 --查询描述中包含4-7的信息 select * from TblClass where cDescription like '%[4-7]' --查询描述中不包含4-7的信息 select * from TblClass where cDescription like '%[^4-7]' --空值判断is [not] null select * from TblClass where cDescription is not null --函数isnull:判断值是否为空,如果为空,不显示null而给一个默认值 select cid,cName,ISNULL(cDescription,'未开始') from TblClass --============================================ --order by 子句排序子句 asc升序 desc降序 select * from TblClass --order by cid[ asc]--按cid升序排列 --order by cid desc order by cid desc,cName asc--可以按照多列排序 --========================================= --分组子句group by ... having ... --聚合函数 --聚合:把多行合并成一行 --use ItCastCn select * from tblscore --找出英语成绩的最高分 select MAX(tenglish) from tblscore --找出数学成绩的最低分 select MIN(tmath) from tblscore --查询英语的平均成绩 select AVG(tenglish) from tblscore --求数学成绩的总和 select SUM(tmath) from tblscore --求参加考试的人数 select count(*) from tblscore select COUNT(*) from tblstudent select * from tblscore --分组:统计各班人数 --出现分组中的列,可以出现在查询结果中,其它的列不可以与聚合函数一起出现在结果中 select tsclassid,COUNT(*) as 人数 from tblstudent group by tsclassid --做选择having:在分组后,对结果集进行筛选 --查找出班级人数大于5的班级信息 select tsclassid,COUNT(*) as 人数 from tblstudent group by tsclassid having COUNT(*)>5 --综合语句练习 select distinct top 1 tsclassid,COUNT(*) AS 人数,avg(tsage) as 平均年龄 from tblstudent where tsGender='男' group by tsclassid having tsclassid>3 order by 平均年龄 desc
说点什么
欢迎讨论