SQL条件查询
1.条件查询
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table
[WHERE condition(s)];
Condition(s)要使用到比较运算符常用的比较运算符如下:
操作符
|
含义
|
=
|
等于
|
>
|
大于
|
>=
|
大于等于
|
<
|
小于
|
<=
|
小于等于
|
<>
|
不等于 等效于!=
|
其它操作
|
And 逻辑运算 逻辑与
|
Or 逻辑运算 逻辑或
|
Not 逻辑运算 逻辑否
|
Between 起始值 and 结束值:使用 BETWEEN 运算来显示在一个区间内的值 包含(起始结束值)
|
In: 使用 IN运算显示列表中的值。 In(,,,)相当于一个集合,只要出现集合中匹配的就显示
|
Like:
l 使用 LIKE 运算选择类似的值
l 选择条件可以包含字符或数字:
• % 代表零个或多个字符(任意个字符)。
• _ 代表一个字符。
|
Escape:
回避特殊符号的:使用转义符。例如:将[%]转为[\%]、[_]转为[\_],然后再加上[ESCAPE ‘\’] 即可
|
Null:
使用 IS (NOT) NULL 判断空值。
|
//查询部门号为10的员工信息 部门为整数类型
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno=10;
//查询职位号为MANAGER的员工信息 岗位的类型为字符类型
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where job='MANAGER';
//查询部门号为10并且员工的职位为MANAGER的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where job='MANAGER' and deptno=10;
注意:
l 字符和日期要包含在单引号中。
l 字符大小写敏感,日期格式敏感。
l 默认的日期格式是 DD-MON-RR。
//查询部门号大于10的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno>10;
//查询薪水大于等于3000的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>=3000;
//查询薪水不等于3000的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal<>3000;
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal !=3000;
//查询薪水大于2000并且小于3000的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>2000 and sal<3000;
//查询薪水大于等于2000并且小于等于3000的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal between 1600 and 3000;
//等效于
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where sal>=1600 and sal<=3000;
//查询部门号位10,20的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno in(10,20);
//注意:相当于如下操作:
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where deptno =10 or deptno=20;
//查询员工名称以S开头的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like 'S%';
//查询员工名称以S结尾的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%S';
//查询员工名称第三个字符为N的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '__N%';
//查询员工名称中含有N的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%N%';
//查询员工名称中倒数第二个字符为%的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%\%_'escape'\';
//查询员工名称总含有%的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where ename like '%\%%'escape'\';
//查询奖金为null的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where comm is null;
//查询奖金非null的员工信息
SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp where comm is not null;
优先级表格:
优先级
|
|
1
|
算术运算
|
2
|
连接符
|
3
|
比较符
|
4
|
Is not null like not in
|
5
|
Not between
|
6
|
not
|
7
|
and
|
8
|
Or
|
备注:可以采用括号改变优先级
|
|
分享到:
相关推荐
本篇将基于提供的文件信息——“SQL查询二进制内容”来深入探讨如何使用SQL语法来查询二进制字段存储的内容。 ### SQL查询二进制内容 #### 一、理解二进制字段 在数据库中,二进制字段是用来存储二进制数据的特殊...
综上所述,简单查询是SQL数据查询功能的基础,通过灵活运用`SELECT`、`FROM`、`WHERE`等关键词,以及各种运算符和条件谓词,用户能够高效地从数据库中提取所需的信息。掌握这些基本技能对于数据库管理员和开发人员来...
浅谈Linq to sql 的多表关联与动态条件查询 Linq to sql 是一种强大的数据查询语言,它可以帮助开发者快速、高效地访问和操作数据库数据。在本文中,我们将讨论 Linq to sql 的多表关联和动态条件查询这两个重要的...
### 知识点二:查询优化策略 一旦确定了那些资源消耗高的查询,下一步就是进行优化工作,以提高系统的整体性能。 #### 2.1 优化策略 - **索引调整**:合理设计和维护索引可以极大地减少物理和逻辑读取次数,从而...
'仿制简单的SQL查询语句,用于对二维数组的查询 '参照SQL语句:Select * From array [Where conditions] [Distinct fields] [ResultWithTitle] ' '实现功能: ' 依条件设置查询数组,返回包含查询字段(或全部字段)...
在传统的SQL语句中,查询条件通常是静态的,但在处理多变的数据需求时,这种静态方式往往不够灵活。动态SQL允许我们在运行时构建和执行SQL语句,使我们能够根据变量或参数来改变查询内容。 问号占位符是SQL中常见的...
### 查询条件是text的数据类型解决办法 - SQL 在SQL中处理`text`数据类型时,经常会遇到各种挑战,尤其是在查询时。本文将详细介绍如何解决当查询条件涉及`text`数据类型时的问题,并给出具体的解决方案。 #### 1....
SQL Server交叉查询存储过程实现(带查询条件) 一、交叉查询的概念 交叉查询是指将纵向的数据转换为横向的数据,以便更好地进行数据分析和展示。在SQL Server中,可以使用pivot函数或自定义函数来实现交叉查询。 ...
二、SQL基本概念 1. 数据库(Database):存储数据的容器,可以理解为电子化的文件柜。 2. 表(Table):数据库中的数据组织形式,类似于电子表格。 3. 记录(Row):表中的每一行数据,代表一个实体的信息。 4. ...
查询这类数据时,可能需要用到`SELECT image_column FROM table_name WHERE ...`,然后在应用程序中处理这些二进制数据。 5. JOIN操作:当需要从多个表中获取信息时,JOIN语句就显得尤为重要。例如,`INNER JOIN`、...
- **WHERE子句**:用于设定查询条件,如`SELECT * FROM table WHERE condition;` - **ORDER BY子句**:对查询结果进行排序,如`SELECT * FROM table ORDER BY column ASC/DESC;` - **GROUP BY子句**:对数据进行...
本主题将深入探讨SQL数据库查询技术,包括基础语法、高级查询技巧以及优化策略。 一、SQL基础 1. 数据库操作:SQL允许创建、修改和删除数据库结构,如表格、视图和索引。`CREATE DATABASE`语句用于新建数据库,`...
通用 SQL 数据库查询语句范例 在数据库查询中,通用 SQL 数据库查询语句范例对于开发人员来说非常重要,它可以帮助开发人员选取高效的查询方法。在本文中,我们将详细介绍通用 SQL 数据库查询语句范例,包括简单...
例如,可能有查询用于合并多个表的数据,或者用于统计特定条件下的数据分布。深入学习并熟练掌握这些高级查询方法,将使你在数据分析和业务决策中更加得心应手。 总结来说,SQL的高级查询语句是数据管理的关键技能...
#### 二、子查询的类型及用法 子查询主要分为两大类:**行子查询**和**列子查询**。 1. **行子查询**: - **定义**:行子查询返回单个值或单行多列的数据。 - **用途**:主要用于比较操作符(如=、!=、>、<等)...
Open SQL支持嵌套查询,可以将一个查询的结果作为另一个查询的条件。例如,找到`Z_TABLE`中`ID`不在子查询结果中的记录: ``` SELECT * FROM ztable WHERE id NOT IN (SELECT id FROM ztable2). ``` 8. **动态...
二、动态SQL的概念 动态SQL是在运行时根据条件生成不同的SQL语句。相比静态SQL,动态SQL更加灵活,能够适应复杂多变的查询需求,避免了硬编码SQL带来的问题,如代码冗余、难以维护等。 三、Hibernate中的动态SQL 在...
#### 二、基本查询方法 **1. MySQL 示例** 考虑表`my_table`中的`datetime_col`字段为`DATETIME`类型,要获取7月1日至7月31日之间晚上10点到早上6点的数据,可以使用以下查询: ```sql SELECT * FROM my_table ...
#### 二、查询语句详解 给定的部分内容为: ```sql SELECT percent_complete, * FROM sys.dm_exec_requests WHERE command='RESTORE DATABASE' ``` 这条SQL语句的目的是筛选出所有与“RESTORE DATABASE”命令相关...
### SQL模糊查询详解 在日常的数据处理工作中,我们经常需要对数据库中的数据进行模糊匹配查询。这种查询方式能够帮助我们快速定位到满足某些特定条件的数据记录。本文将围绕“SQL模糊查询”这一主题,结合提供的...