数据库系列学习(四)-数据的过滤
2015-05-17 22:31
253 查看
1.准备学习的数据库
2.select基本用法
(1)简单的数据检索
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/73a0d3f265cd49538b08cbbe657e1eec.png)
(2)检索出需要的列
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/d59c13cb7377230ec2985dcfff59bcb2.png)
(3)给列设别名
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/8b4d28b84d556556b5a0c83114c7376d.png)
(4)按条件过滤
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/81938499f57c6baabaf6874c7d48a8f7.png)
(5)数据汇总
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/71d2c2ea8e2ff9e8c8a9b9b09a5abc15.png)
(6)排序
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/9c90f95699b7e98bac1e1a29d44de1be.png)
3.高级数据过滤
(1)通配符过滤
(2)空值检测
(3)反义运算符
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/dadb55273f172d202bf941b670175ab3.png)
(4)多值检测
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/2ff8d429d8494b25db9aecd77164b19c.png)
(5)范围检测
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/343af9588e55547f78f3631262b94db4.png)
(6)低效的“where 1 = 1”
在动态组装sql语句时会用到
缺点:使用“1=1”的过滤条件以后数据库系统就无法使用检索等查询优化策略,数据库系统就会被迫对每行数据进行扫描,即全表扫描
--创建学生表 create table T_Student ( --identity表示主键自增长,从1开始,且每次加1 SId int primary key identity(1,1), SName nvarchar(10), SGender varchar(2) default('男'), SAge int ) --插入数据 --全部列名与值一一对应 insert into T_Student(SName,SGender,SAge) values('李三','男',13) --全部列名都赋值,则values前边值可省 insert into T_Student values('李四','女',14) --因为SGender有默认值,所以写也有有值 insert into T_Student(SName,SAge) values('王五',15) insert into T_Student values('赵六','男',16) insert into T_Student values('Kim','男',17) insert into T_Student values('Lily','女',18) insert into T_Student values('Jerry','女',19)
2.select基本用法
(1)简单的数据检索
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/73a0d3f265cd49538b08cbbe657e1eec.png)
(2)检索出需要的列
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/d59c13cb7377230ec2985dcfff59bcb2.png)
(3)给列设别名
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/8b4d28b84d556556b5a0c83114c7376d.png)
(4)按条件过滤
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/81938499f57c6baabaf6874c7d48a8f7.png)
(5)数据汇总
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/71d2c2ea8e2ff9e8c8a9b9b09a5abc15.png)
(6)排序
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/9c90f95699b7e98bac1e1a29d44de1be.png)
3.高级数据过滤
(1)通配符过滤
(2)空值检测
(3)反义运算符
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/dadb55273f172d202bf941b670175ab3.png)
(4)多值检测
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/2ff8d429d8494b25db9aecd77164b19c.png)
(5)范围检测
![](https://oscdn.geek-share.com/Uploads/Images/Content/202001/27/343af9588e55547f78f3631262b94db4.png)
(6)低效的“where 1 = 1”
在动态组装sql语句时会用到
缺点:使用“1=1”的过滤条件以后数据库系统就无法使用检索等查询优化策略,数据库系统就会被迫对每行数据进行扫描,即全表扫描
相关文章推荐
- 两次SQL 学习之感悟——数据库查询语言——走进数据系列之十二
- 数据库学习3 过滤数据
- 数据库系列学习(二)-数据表的创建和管理
- 数据库系列学习(三)-数据的增、删、改
- 数据库系列学习(二)-数据表的创建和管理
- 数据库系列学习(五)-数据的检索
- 【WPF学习笔记】之如何保存画面上新建的数据到数据库中并且删除画面上的数据和数据库的数据:动画系列之(五)
- 框架学习系列 mybatis 第6篇 mybatis入门程序之需求开发3向数据库中插入数据1
- 数据库学习——过滤数据
- 【java面试系列之数据库篇】数据库存储引擎、索引、事务、视图、优化
- [深度学习] RCNNs系列(1) Ubuntu下Faster RCNN配置及训练和测试自己的数据方法
- Python爬虫系列(七)豆瓣图书排行榜(数据存入到数据库)
- redis系列之数据库与缓存数据一致性解决方案
- 深度学习DeepLearning.ai系列课程学习总结:6. 具有一个隐藏层的平面数据分类代码实战
- redis系列之数据库与缓存数据一致性解决方案
- 1小时学会MySQL系列:(1)数据库与数据表
- 数据库基础学习day3(对数据的增删改查)
- 【数据库学习笔记】MySQL_01_概述,操作库,操作表,管理数据
- 数据库学习纪要(二十二):MySQL创建数据库、表,及导入CSV文件数据2
- MYSQL 学习笔记二 数据库引擎与数据表的基本操作