sql server 查询
2016-06-11 11:22
316 查看
use Jacob
go
--1.查询所有的记录
select * from 学生表
--2.查询指定字段
select ID 姓名 from 学生表
--3.在查询结果中使用表达式,
--以及改变显示的列标题
select ID*10,姓名 from 学生表
select '学号' = ID*10,姓名+'酱' as '昵称' from 学生表
--4.显示部分查询结果
select top(2) id,姓名 from 学生表
select top(25)percent id,姓名 from 学生表 --按百分比查询(只入不舍)
--5.带限定条件的查询
select * from 学生表
where not 姓名 = '张三'
--6.带and的多条件查询
select * from 学生表
where 性别 = '男'and 生日>= '1991-9-10'
--7.带or的多条件查询
select * from 学生表
where 性别 = '女' or 生日 <= '1990-2-12'
--8.使用like运算符进行模糊查询
select * from 学生表
where 姓名 like '[李]%' --使用通配符 % _ [] [^]
select * from 学生表
where 姓名 like '%[山]%' --名字里面带山的查询
select * from 学生表
where 姓名 like '_[山]_'
select * from 学生表
where 姓名 like '[山]_'
--9.使用between and进行查询
select * from 学生表
where 生日 between '1990-1-20' and '1991-2-10' --查询1990年到1991年之间数据
--10.对查询结果排序
select * from 学生表
order by 班级ID desc , ID --降序排列
--11.使用GROUP BY分组(常跟聚合函数一起使用)
select * from
select * count(*),班级类型
form 班级表
group by 班级类型 --查询班级开了多少次
--在查询结果中插入字符串常量
select '学号', id from 学生表
--嵌套查询 使用in
--查询出所有学习 数据库的学生
select * from 学生表
where 班级ID in
(
select ID from 班级表
where 班级类型 = '数据库'
)
--嵌套查询,使用exists
--查询是否存在,数据库班,存在,则查出所有女学员
select * from 学生表
where 性别 = '女' and exists
(
select id from 班级表
where 班级类型= '数据库班'
)
/*********************************************************/
多表查询
/*********************************************************/
--内连接
--查询所有11期的学生信息
select * from 学生表,班级表
where 学生表.班级ID = 班级表.ID and 班级名 = '11期'
--外链接
--左外
select * from 学生表 left outer join 班级表
on 学生表.班级ID = 班级表.ID and 班级名 = '11期'
--右外连接
select * from 学生表 right outer join 班级表
on 学生表.班级ID = 班级表.ID and 班级名 = '11期'
go
--1.查询所有的记录
select * from 学生表
--2.查询指定字段
select ID 姓名 from 学生表
--3.在查询结果中使用表达式,
--以及改变显示的列标题
select ID*10,姓名 from 学生表
select '学号' = ID*10,姓名+'酱' as '昵称' from 学生表
--4.显示部分查询结果
select top(2) id,姓名 from 学生表
select top(25)percent id,姓名 from 学生表 --按百分比查询(只入不舍)
--5.带限定条件的查询
select * from 学生表
where not 姓名 = '张三'
--6.带and的多条件查询
select * from 学生表
where 性别 = '男'and 生日>= '1991-9-10'
--7.带or的多条件查询
select * from 学生表
where 性别 = '女' or 生日 <= '1990-2-12'
--8.使用like运算符进行模糊查询
select * from 学生表
where 姓名 like '[李]%' --使用通配符 % _ [] [^]
select * from 学生表
where 姓名 like '%[山]%' --名字里面带山的查询
select * from 学生表
where 姓名 like '_[山]_'
select * from 学生表
where 姓名 like '[山]_'
--9.使用between and进行查询
select * from 学生表
where 生日 between '1990-1-20' and '1991-2-10' --查询1990年到1991年之间数据
--10.对查询结果排序
select * from 学生表
order by 班级ID desc , ID --降序排列
--11.使用GROUP BY分组(常跟聚合函数一起使用)
select * from
select * count(*),班级类型
form 班级表
group by 班级类型 --查询班级开了多少次
--在查询结果中插入字符串常量
select '学号', id from 学生表
--嵌套查询 使用in
--查询出所有学习 数据库的学生
select * from 学生表
where 班级ID in
(
select ID from 班级表
where 班级类型 = '数据库'
)
--嵌套查询,使用exists
--查询是否存在,数据库班,存在,则查出所有女学员
select * from 学生表
where 性别 = '女' and exists
(
select id from 班级表
where 班级类型= '数据库班'
)
/*********************************************************/
多表查询
/*********************************************************/
--内连接
--查询所有11期的学生信息
select * from 学生表,班级表
where 学生表.班级ID = 班级表.ID and 班级名 = '11期'
--外链接
--左外
select * from 学生表 left outer join 班级表
on 学生表.班级ID = 班级表.ID and 班级名 = '11期'
--右外连接
select * from 学生表 right outer join 班级表
on 学生表.班级ID = 班级表.ID and 班级名 = '11期'
相关文章推荐
- Oracle 10g 10.2.0.4的group by BUG |ORA-00979 not a GROUP BY expression|
- SQL触发器实例讲解
- 学习笔记之MySQL
- mysql数据库中的十进位是什么意思?
- PL/SQL 10注册码
- 解决 2003 Can’t connect to MySQL server on ‘localhost’ (10048)
- oracle从子表取出前几行数据:
- mysql status关键字 数据表设计中慎重使用
- redis 入门(安装-测试)
- 最简单的数据库“范式”教程
- redis在windows下的安装与使用
- mysql 中LIMIT 分页查询
- SQL Server使用row_number分页的实现方法
- mysql中GROUP BY 分组查询
- 【ZZ】一张图清晰追溯数据库的发展历程(1962-2016年)
- Mybatis <Sql>标签
- mysql对查询结果排序
- MySQL主从复制的原理及配置方法(比较详细)
- Navicat数据存放位置和备份数据库路径设置
- 数据泵导出出现ORA-31617错误