mysql进阶(五)数据表中带OR的多条件查询
MySQL数据表中带OR的多条件查询
OR关键字可以联合多个条件进行查询。使用OR关键字时:
条件
1) 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来。
2) 如果不符合这些查询条件中的任何一条,这样的记录将被排除掉。
语法格式
OR关键字的基本语法格式如下:
条件表达式1 OR 条件表达式2 [...OR 条件表达式n]
OR可以连接两个条件表达式,同时可以使用多个OR关键字,以连接更多的条件表达式。
实例
实例1
使用OR关键字查询employee表中d_id为1001,或者sex为'男'的记录。SELECT语句的代码如下:
SELECT * FROM employee WHERE d_id=1001 OR sex LIKE '男';
可将d_id为1001的记录被查询了出来,同时,sex为'男'的记录也被查询了出来。
这说明,使用OR关键字时,只要符合多个条件中的任意一个条件,就可以被查询出来。
实例2
使用OR关键字查询employee表中的记录。查询条件为num取值在(1,2,3)集合中,或者age的范围为24~26,或者homeaddress的取值中包含“厦门市”。SELECT语句的代码如下:
SELECT * FROM employee WHERE
num IN(1,2,3) OR age BETWEEN 24 AND 26
OR homeaddress LIK '%厦门市%';
结果显示,只要符合这3个条件表达式中的任意一个条件,这样的记录就会被查询出来。
OR可以和AND一起使用。当两者一起使用时,AND要比OR先运算。
实例3
使用OR和AND关键字查询employee表中的记录。SELECT语句的代码如下:
SELECT * FROM employee WHERE num IN(1,3,4) AND age=25 OR sex='女';
结果显示,只要符合num IN(1,3,4) AND age=25的记录或者符合sex='女'的记录都被显示了出来。
如果将条件的顺序换一下,将SELECT语句变成下面的情况:
SELECT * FROM employee WHERE sex='女' OR num IN(1,3,4) AND age=25;
结果显示,与前面的SELECT语句的执行结果是一样的。
这说明,AND关键字前后的条件先结合,然后再与OR关键字的条件相结合。也就是说,AND要比OR先运算。
提示
AND和OR关键字可以连接条件表达式。这些条件表达式中可以使用“=”、“>”等操作符,也可以使用IN、BETWEEN AND和LIKE等关键字,而且,LIKE关键字匹配字符串时可以使用“%”和“_”等通配符。
mysql进阶(五)数据表中带OR的多条件查询的更多相关文章
- (转)MySQL数据表中带LIKE的字符匹配查询
MySQL数据表中带LIKE的字符匹配查询 2014年07月15日09:56 百科369 MySQL数据表中带LIKE的字符匹配查询 LIKE关键字可以匹配字符串是否相等. 如果字段的值与指定的 ...
- Mysql 如何删除数据表中的重复数据!
1.使用distinct查询所有不重复的记录 2.创建数据表相同结构的临时表,将第一步的数据复制进去 create temporary table if not exists student_temp ...
- MySQL获得指定数据表中auto_increment自增id值的方法及实例
http://kb.cnblogs.com/a/2357592/很多情况下,我们要提前用到当前某个表的auto_increment自增列id,可以通过执行sql语句来查询到这个id值. show ta ...
- MySQL查询数据表中数据记录(包括多表查询)
MySQL查询数据表中数据记录(包括多表查询) 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: sele ...
- SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型
原文:SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测 ...
- mysql insert插入时实现如果数据表中主键重复则更新,没有重复则插入的四种方法
[CSDN下载] Powerdesigner 设计主键code不能重复等问题 [CSDN博客] Oracle中用一个序列给两个表创建主键自增功能的后果 [CSDN博客] MySQL自增主键删除后重复问 ...
- 【MySQL】MySQL中查询出数据表中存在重复的值list
1.目的:查询MySQL数据表中,重复记录的值 2.示例: 3.代码: select serial_num,count(*) as count FROM card_ticket GROUP BY se ...
- mysql status关键字 数据表设计中慎重使用
mysql status关键字 数据表设计中慎重使用
- mysql 获取一张表中, 另一张表不存在的数据
编写sql语句中,经常需要编写获取一张数据表中不存在与另一张表的数据,相关编写方法如下: 方法1: 使用not in ,效率低下,在数据较小的情况下可以采用如下编写 SELECT * FROM a A ...
随机推荐
- ZooKeeper之(四)配置与命令
4.1 配置文件 ZooKeeper安装好之后,在安装目录的conf文件夹下可以找到一个名为"zoo_sample.cfg"的文件,是ZooKeeper配置文件的模板. ZooKe ...
- Sublime Text 3下C/C++开发环境搭建
Sublime Text 3下C/C++开发环境搭建 之前在Linux Mint 17一周使用体验中简单介绍过Sublime Text. 1.Sublime Text 3安装 Ubuntu.Linux ...
- FORM开发之键性弹性域开发
1.创建表时带有键弹性域字段 SUMMARY_FLAG VARCHAR2(1) , /* 必须有此字段 */ ENABLED_FLAG VARCHAR2(1) , /* 必须有此字段 */ START ...
- Gazebo機器人仿真學習探索筆記(三)機器人模型
gazebo_models:https://bitbucket.org/osrf/gazebo_models 模型庫下載,可以參考如下命令: ~/Rob_Soft/Gazebo7$ hg clone ...
- (一二八)使用POST上传文件
简介 上传文件到服务器是一个比较常用的操作,最基本的方式是通过POST上传,文件以二进制形式,作为一个参数传递,但是这个POST的结构相当复杂,且必须完全符合HTTP标准. 文件上传的POST格式 该 ...
- Java的LinkedList详解,看源码之后的总结
1. LinkedList实现了一个带表头的双向循环链表: 2. LinkedList是线程不同步的: 3. LinkedList中实现了push.pop.peek.empty等方法,因此Linked ...
- EBS库存(INV)模块常用表
select * from org_organization_definitions库存组织 select * from mtl_parameters组织参数 select * from mtl ...
- Android中常用开发工具类—持续更新...
一.自定义ActionBar public class ActionBarTool { public static void setActionBarLayout(Activity act,Conte ...
- 14 fragment 创建
静态展示 注意 静态的开始进入界面的生命周期和动态的不同 详情:14 fragment注意点 步骤一:创建一个类继承 Fragment 代码类型一: package com.fmy.demo1; im ...
- Android的RadioButton和checkBox的用法-android学习之旅(十九)
RadioButton和checkBox简介 单选按钮(RadioButton)和复选框(CheckBox)都继承了Button,因此属性的设置和Button差不多,只是加了一个android:che ...