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

springmvc 分页查询的简单实现

如何修改此 SQL 查询中的 XML 代码以突出显示表的特定行?

EntityFramework 映射片段问题

sql mysql查询/ db片段

使用SQL语句查询每张表的column name