SQLSever 第二堂课,主要学习内容为top查询前多少行,distinct去重,order by排序,group by分组,最重要子查询

 

go

update xueshengxinxi set name='你好' where code=1--修改第一行name的名字,改成“你好”

update xueshengxinxi  set [weight]=50 where code=9

go

delete from xueshengxinxi --删除表中所有数据

delete from xueshengxinxi where age=4 --删除表中第四行数据

go select *from xueshengxinxi where code =4--查询表中第四行数据

select name,age from xueshengxinxi where code between 1 and 3--查询表中第一行到第三行name,age两列的 --具体信息

go delete from table xueshengxinxi --删除表中所有信息

delete from table where code=3 --删除表中第三行信息

drop table xueshengxinxi

--top 关键字

select top 3*from xueshengxinxi--查询前三行

select top 3 name,code from xueshengxinxi where age >=22--查询年龄大于22岁的前三行name列和code列的的信息

--distinct 去重

select distinct name from xueshengxinxi--把名字里重复的去掉

select distinct sex from xueshengxinxi--把性别去重, select disrinct sex='男' from xushengxinxi--把性别男的去重,不会再显示女的信息

--order by

select *from xueshengxinxi order by age asc --升序,按年龄排序

select *from xueshengxinxi order by hight desc--降序 ,按身高排序

select *from xueshengxinxi where age<25 order by age asc--把年龄小于25的查询出来并排序

select *from xueshengxinxi order by age asc,code desc--如果有两个年龄相同,先拍年龄再按照code 排倒序

select *from xueshengxinxi order by [weight] asc,code asc--如果有连个体重相同的,先按体重排正序 --再按学号排正序。

  order by+列名+asc是排正序,order by+列名+desc是排倒

 go

--分组

select age from xueshengxinxi group by age --对某一列进行分组,相当于去重显示,只显示一列

 select hight from xueshengxinxi group by hight --分组之后会自动排序

go

--子查询  !!!!!!!!!!!!! --使用查询语句查询,一一列数据出来,然后作为其他查询的查询条件中的参数来使用

--in 表示在什么参数之内

select *from xueshengxinxi where age in(23,24)--相当于age=23 or age=24。查询学生信息中23,24岁的信息

select *from xueshengxinxi where age not in(23,24)--查询学生信息中不是23,24岁的信息

go

--查询身高不在年龄是23岁的人身高范围之内的信息:

select *from xueshengxinxi where hight not in(select hight from xueshengxinxi where age=23) --先查询这个23岁的人,然后把这个23岁身高的信息去掉)

--名字叫田七的中的年龄比code=20的李四这个人的年龄小4岁的人的信息:

 select *from xueshengxinxi where age+4=(select age from xueshengxinxi where code=20) and name='田七'

--名字叫田七中的比姓李的这个人的年龄大三岁的人的信息

: select *from xueshengxinxi  where age-3=(select age from xueshengxinxi where name like '李%') and name='田七'

--比张三的身高矮的人的信息 select *from xueshengxinxi where hight<(select hight from xueshengxinxi where name ='张三')

--比张三高的人比code=24矮的人信息 :

select*from xueshengxinxi where hight<(select hight from xueshengxinxi where name='张三') and hight>(select hight from xueshengxinxi where code=24) --一个女的比身高是170的那个人重8公斤的人的信息:

select*from xueshengxinxi where [weight]-8=(select [weight] from xueshengxinxi where hight=170) and sex='女'

--一个比年龄是26的人小的女孩子的信息 :

select *from xueshengxinxi where  age<(select age from xueshengxinxi where age=26) and sex='女'

--查询学生中身高是170和175的学生的信息:

select *from xueshengxinxi where hight in(170,175)

posted @ 2015-04-20 15:10  zhenximeiyitian  阅读(322)  评论(0编辑  收藏  举报