本文所用数据库为db_Test,数据表为Employeehtml
语句语法简单概括为:数据库
SELECT select_list [INTO new_table_name] [FROM table_source] [WHERE search_condition] [GROUP BY group_by_expression] express
[HAVING search_condition] [ORDER BY order_expression [ASC | DESC]]函数
备注:红色字体为自定义参数,根据实际查询填写。字体
WITH子句用于指定临时命名的公用表达式,在单条语句(SELECT、INSERT、UPDATE、DELETE)的语句执行范围内定义;3d
例:建立一个公用表达式,计算Employee表中每年龄的员工数量;htm
例: 在Employee中查询全部女员工的姓名、年龄信息,并另起列名;blog
另起列名有三种方法:排序
1.列名 as 新列名it
2.列名 =新列名
3.列名 新列名
PS:我我的比较爱用as
建立新表,并将查询结果行插入该表中。
例:用into新建一张表,名为tb_EmpAge,包含Name和Age两列
Select Name,Age into tb_EmpAge from Employee
因为where子句的复杂性,下面按照参数的前后顺序进行介绍;
NOT:取反;
AND:逻辑与;
OR:逻辑或;
例:利用AND查询Employee表中的年龄小于30岁的全部女员工 的信息;
例;利用NOT查询年龄不小于30岁的全部女员工的信息
例:利用组合查询年龄不大于40的男员工信息或年龄大于30的女员工信息;
此运算符使用简单,在此再也不占用篇幅了。
用于模糊查询,通配符有%、_、[ ]、[^]
%:后面能够跟零个或多个字符
_:匹配任意单个字符
[ ]:查询必定范围内的单个字符,包括两端数据
[^]:表示不在必定范围内的单个字符,包括两端数据
例:查询姓熊的员工而且名字只有两个字的员工信息
例:查询年龄在23-27周岁的员工信息
between...and 和not between and
例:查询年龄在23-27周岁的女员工信息
在where子句中,须要用is (not) null 判断空值,不能使用=判断空值
用来指定列表搜索的条件;
例:查询ID为1,2,3,的员工信息
三者都做用于比较运算符和子查询之间,通常和嵌套查询一块儿用,Some和any等效
具体做用请看例子。all是大于最大者,any是小于最小者
例:查询年龄大于熊大和熊二的员工信息
做用于子查询,指定行是否存在
用于对表进行分组
指定组或聚合的搜索条件,只能与select一块儿使用。
例:查询相同年龄段大于2人的员工信息
在select返回的结果中排序;只有在指定了Top状况下,才能在视图、内联函数、派生表和子查询中起做用。
ORDER
例:将表中人员按照年龄大小降序排列
说明:order by 默认是升序排列
生成合计,出如今结果列
例:计算表中员工的平均年龄
从select结果中去掉重复记录
例;去掉重复年龄
例:从select结果中显示前4行
转载自:https://www.cnblogs.com/xhkongblog/p/7765514.html