资讯详情

CC00021.bigdatajava——|Java&MySQL基础.V21|——|MySQL.v21|DML_条件查询|

一、[DQL_条件查询]
### --- 条件查询  ——>        如果查询语句中没有设置条件,就会查询所有的行信息,在实际应用中, ——>        必须指定查询条件,过滤记录 ——>        语法格式 ——>        select 列名 from 表名 where 条件表达式 ——>        * 首先取出表中的每个数据,返回符合条件的数据,过滤掉不满意的数据 ——>        运算符
二、比较运算符
运算符 说明
> < <= >= = <> != 大于、小于、大于等于,不等于
BETWEEN ...AND...
在一定范围内显示的值
例如: 2000-10000之间: Between 2000 and 10000
IN(集合)
集合表示多个值,用逗号分隔,例如: name in (悟空,八戒)
in每个数据都将作为一个条件显示,只要满足条件
LIKE '%张%' 模糊查询
IS NULL 查询某一列NULL的值, 注: 不能写 = NULL
三、逻辑操作符
运算符 说明
And && 多个条件同时成立
Or || 任何条件都成立
Not 不成立,取反。
四、需求一:
### --- 需求1:  # 查询员工姓黄蓉的员工信息 # 员工信息查询工资5000 # 查询工资价格不是5000的员工信息 # 查询工资超过6000元的所有员工信息 # 在5000到10000之间查询所有员工信息 # 工资价格为3600或7200或20000
### --- 代码实现  # 查询员工姓黄蓉的员工信息 SELECT * FROM emp WHERE ename = '黄蓉';  # 员工信息查询工资5000 SELECT * FROM emp WHERE salary = 5000;  # 查询工资价格不是5000的员工信息 SELECT * FROM emp WHERE salary != 5000; SELECT * FROM emp WHERE salary <> 5000;  # 查询工资超过6000元的所有员工信息 SELECT * FROM emp WHERE salary > 6000;  # 在5000到10000之间查询所有员工信息 SELECT * FROM emp WHERE salary BETWEEN 5000 AND 10000;  # 工资价格为3600或7200或20000 -- 方式1: or SELECT * FROM emp WHERE salary = 3600 OR salary = 7200 OR salary = 20000; -- 方式2: in() 匹配括号中指定的参数 SELECT * FROM emp WHERE salary IN(3600,7200,20000);
五、需求二:
### --- 需求2:  # 查询所有含有精字的员工信息 # 以孙开头查询所有员工信息 # 查询所有员工信息的第二个字是兔子 # 没有部门的员工信息 # 查询部门员工信息
六、模糊查询 通配符
通配符 说明
% 表示匹配任何多个字符串,
_ 表示匹配 一个字符
# 查询所有含有精字的员工信息 SELECT * FROM emp WHERE ename LIKE %精%;  # 以孙开头查询所有员工信息 SELECT * FROM emp WHERE ename LIKE '孙%';  # 查询第二个字为兔'的所有员工信息
SELECT * FROM emp WHERE ename LIKE '_兔%';

# 查询没有部门的员工信息
SELECT * FROM emp WHERE dept_name IS NULL;
-- SELECT * FROM emp WHERE dept_name = NULL;

# 查询有部门的员工信息
SELECT * FROM emp WHERE dept_name IS NOT NULL;
七、sql语句
1、sql语句

/*
    条件查询
    语法格式: select 列名 from 表名 where 条件表达式
    
    比较运算符
        >  <  <=   >=   =  <> !=
        BETWEEN  ...AND...
        IN(集合)
        LIKE
        IS NULL
        
    逻辑运算符
        And
        Or
        Not
*/
# 查询员工姓名为黄蓉的员工信息
-- 1.查哪张表   2.查哪些字段 3.查询条件
SELECT * FROM emp WHERE ename = '黄蓉'


# 查询薪水价格为5000的员工信息
SELECT * FROM emp WHERE salary = 5000;


# 查询薪水价格不是5000的所有员工信息
SELECT * FROM emp WHERE salary != 5000;
SELECT * FROM emp WHERE salary <> 5000;

# 查询薪水价格大于6000元的所有员工信息
SELECT * FROM emp WHERE salary > 6000;

# 查询薪水价格在5000到10000之间所有员工信息
SELECT * FROM emp WHERE salary BETWEEN 5000 AND 10000;
SELECT * FROM emp WHERE salary >= 5000 AND salary  <= 10000;

# 查询薪水价格是3600或7200或者20000的所有员工信息
SELECT * FROM emp WHERE salary = 3600 OR salary = 7200 OR salary = 20000;
-- 方式2 使用 in() 匹配括号中的参数
SELECT * FROM emp WHERE salary IN(3600,7200,20000);

/*
    like '_精'
        % 通配符 ,表示匹配任意多个字符串
        _ 通配符 ,表示匹配一个字符
*/
# 查询含有'精'字的所有员工信息
SELECT * FROM emp WHERE ename LIKE '%精%';

# 查询以'孙'开头的所有员工信息
SELECT * FROM emp WHERE ename LIKE '孙%';

# 查询第二个字为'兔'的所有员工信息
SELECT * FROM emp WHERE ename LIKE '_兔%';

# 查询没有部门的员工信息
-- select * from emp where dept_name = null; 错误方式
SELECT * FROM emp WHERE dept_name IS NULL;

# 查询有部门的员工信息
SELECT * FROM emp WHERE dept_name IS NOT NULL;

-- 条件查询 先取出表中的每条数据,满足条件的就返回,不满足的就过滤.

标签: v21ap光纤色标传感器传感器v21光电开关传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台