SQL 表的查询
Posted dana8811
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 表的查询相关的知识,希望对你有一定的参考价值。
select * from dbo.Table_1 as T1 select * from dbo.Table_1 T1
as 区别名全部列、部分列
查询前n部分数据:
top n 列名:表示查看前n行
top n percent 列名:表示查看前百分之几的数据
select * from dbo.Table_2--查2号表所有数据 select top 3 * from dbo.Table_2--查2号表前三条数据 select top 3 percent * from dbo.Table_2--查2号表前百分之3的数据
排序:order by 列名1 asc|desc,列名1 asc|desc... desc降序 ASC升序排
select * from dbo.Table_2 order by sid desc,classid desc--查2号表所有数据,按SID降序排,次按CID降序排
消除重复行:distinct
select distinct classid from dbo.Table_2--查2号表并在classid一列删除重复行
where 条件
写在where后面:对行进行筛选,返回bool类型的值,如果某行中的列数据满足条件,则加入结果集,否则不出现在结果集中
比较运算符:=,>,>=,<,<=,!=或<>
select sname from dbo.Table_2 where sid>2--学生编号大于2的所有学生姓名
between ... and ...表示在一个连续的范围内
select sname from dbo.Table_2 where sid between 2 and 3--学生编号2到3的所有学生姓名
in表示在一个非连续的范围内
select * from dbo.Table_2 where sid in(3,1,6)--学生编号1,3,6的所有学生
逻辑运算符:and,or,not
select * from dbo.Table_2 where sid=3 or sid=4--学生编号1,4的所有学生
select * from dbo.Table_2 where sid not in(3,4,5)--学生编号不是3,4,5的所有学生
模糊查询:用于处理字符串类型的值,运算符包括:like % _ []
select * from Table_2 where sname like ‘%e%‘--查询2号表内名字内带e的信息 select * from table_2 where sname like ‘q%‘--查询2号表内名字内带q开头的信息 select * from Table_2 where sphone like ‘1[5-9]%‘--查询2号表内手机号码15~19的信息 select * from Table_2 where sphone like ‘1[^5-9]%‘--查询2号表内手机号码不是15~19的信息
%与_写在[]中表示本身的含义 在[]表示一个连续的范围可以使用 -^写在[]内部的开头,表示不使用内部的任何字符
like 关键字 %代表0到多个任意字符 _ 一个任意字符 【 ^非 】
null的判断:使用is null或is not null,与其它值计算时返回null,排序时null被认为是最小
select * from Table_2 where sphone is null--查询2号表内电话号码是null的信息 select * from Table_2 where sphone is not null--查询2号表内电话号码不是null的信息
以上是关于SQL 表的查询的主要内容,如果未能解决你的问题,请参考以下文章
sql [SQL查询片段]用于在命令行或通过R和其他工具使用SQL的快速代码段#tags:sql,R,text processing,命令li