mysql---过滤数据
来源:互联网 发布:智百盛软件 编辑:程序博客网 时间:2024/06/17 17:32
通过WHERE指定搜索条件
1. WHERE语句
SELECT prod_name, prod_priceFROM productsWHERE prod_price=2.50;
只返回prod_price值为2.50的行
WHERE如果和ORDER BY一同使用需要让ORDER BY置于WHERE之后
2. WHERE操作符
2.1 检查单个值
SELECT prod_name, prod_priceFROM productsWHERE prod_name = 'fuses'
SELECT prod_name, prod_priceFROM productsWHERE prod_price < 10;
何时使用引号 单引号用来限定字符串,如果将值与串类型的列进行比较,需要使用引号。
用来与数值列进行比较的值不需要引号。
2.2 不匹配检查
SELECT vend_id, prod_nameFROM productsWHERE vend_id <> 1001;
2.3 范围检查
SELECT prod_name, prod_priceFROM productsWHERE prod_price BETWEEN 5 AND 10;
这两个值必须使用AND关键字分隔。BETWEEN匹配范围中所有值,包括指定的开始值和结束值。
2.4 关于NULL
一个NULL代表一个缺失或未知的值。前面提到,NULL并不代表0,也不代表一个包含一个或多个空格的字符串。
- 零具有多种含义。可以表示账户余额状态,产品数量等。
- 对于SQL而言,一个空格就是一个有效字符,一个三个空格组成的字符串与三个字母组成的字符串一样合法。
- 一个零长度字符串,即两个连续的单引号(”),对于SQL语言也是可以接受的值,并且在特定场景下具有意义。例如,对于员工表,另长度字符串就可以表征员工没有中间名。
NULL的值
缺失值
通常由认为失误造成,例如忘记输入
未知值
出现未知值的原因:
- 字段所需要的特定值尚未明确
- 某些信息的确是未知的
- 某字段所有的值都不适用与某特定的记录,例如头发颜色,对于没有头发的人来说,可以使用NULL来代表,但使用N/A会更合适
表中是否出现NULL取决于使用数据的方式
NULL带来的问题
NULL会影响数据运算,含有NULL的数学运算,最终的结果都是NULL。
空值检查
在创建表的过程中,可以指定其中的列是否可以不包含值。在一个列不包含值时,称其为包含空值NULL。
NULL 无值(no value) 它与字段包含0,空字符串或仅仅包含空格不同。
SELECT语句使用IS NULL检查具有NULL值的列
SELECT prod_nameFROM productsWHERE prod_price IS NULL;
NULL与不匹配 在通过过滤选择出不具有特定值的行时,可能希望返回具有NULL值的行。但是,这样不可以,因为未知具有特殊的含义,数据库不知道他们是否匹配,所以在匹配过滤或不匹配过滤时不返回他们。
因此,在过滤数据时,一定要验证返回数据中确实给出了被过滤列具有NULL的行。
- MySQL过滤数据
- mysql的过滤数据
- mysql---过滤数据
- MySQL过滤数据.md
- MySQL的数据过滤
- MySQL通配符过滤数据
- [MYSQL-6] 过滤数据
- [MYSQL -7]数据过滤
- MySQL数据过滤和通配符过滤.md
- mysql过滤数据(一)
- mysql过滤数据(二)
- MYSQL 过滤数据 学习笔记
- 【MySql】过滤数据where语句
- MySQL必知必会-6过滤数据
- 每天一点MySQL-过滤数据
- MySQL 查询过滤重复数据
- MySQL 搜索语句--过滤数据
- mysql过滤数据(三)用通配符进行过滤
- 人工智能发展史-从图灵测试到大数据
- springboot集成dubbo、zookeeper
- [笔记]: 区间dp
- [一天几个linux命令] 有效与初始用户组:group, newgrp
- Park Visit(树型DP)
- mysql---过滤数据
- [Virtualization]ESXi体系结构与内存管理(一)体系结构
- 【Redis进阶】Redis伪集群搭建与简单应用
- Kotlin学习——基本语法
- 描述Jsp页面的运行过程
- 网络流——洛谷P1345 [USACO5.4]奶牛的电信Telecowmunication
- Word写博客测试
- 全栈必备 Log日志
- 虚拟货币的匿名性和混币原理