首页 > 数据库 >mysql条件查询

mysql条件查询

时间:2024-04-06 10:55:06浏览次数:24  
标签:last name employees mysql 查询 条件 WHERE id SELECT

条件查询

语法:
select 查询条件 (III)
from 表名 (I)
where 筛选条件 (II)

分类:
1、按条件表达式筛选
条件运算符: <、>、=、<>(不等于)、!=、<=、>=。
2、按逻辑表达式筛选
逻辑表达式: &&、||、!、and、or、not。

&&和and:全真为真,一假全假
||和or:全假为假,一真全真
!和not:取反

3、模糊查询(复杂的条件查询)
like、between and、in、is (not) null。

#like:一般和通配符(%、_)搭配使用。
      与 % 搭配:任意多个字符,包含0个字符
      与 _ 搭配:任意单个字符
between and:包含临界值,临界值不能颠倒。
 in:判断某字段的值是否属于in列表中发某一项。in列表的值类型必须一致或兼容。
is(not)null:!=或<>不能判断null值,is null和is not null可以判断null值,不可以判断数值。
#安全等于 <=>:既可以判断null值又可以判断普通数值。

例如:
查询部门编号不等于90号的员工名和部门编号
SELECT last_name,depaerment_id FROM employees WHERE department_id <> 90;(建议使用)
或者
SELECT last_name,depaerment_id FROM employees WHERE department_id != 90;

查询部门编号不是在90到110之间或者工资高于15000的员工信息
SELECT * FROM employees WHERE NOT(department_id>=90 AND department_id<=110) OR salary>15000;
或者
SELECT * FROM employees WHERE NOT(department_id BETWEEN 90 AND 110) OR salary>15000;
或者
SELECT * FROM employees WHERE department_id<90 OR department_id>110 OR salary>15000;

查询员工名中包含字符a的员工信息

SELECT * FROM employees WHERE last_name LIKE '%a%';

查询员工名中第三个字符为n,第五个字符为l的员工名和工资

SELECT last_name, salary FROM employees WHERE last_name LIKE '__n_l%';

查询员工名中第二个字符为_的员工名

SELECT last_name FROM employees WHERE last_name LIKE '_%'; (\:转义字符)
或者
SELECT last_name FROM employees WHERE last_name LIKE '
$_%' ESCAPE $; (escape $:将$变成 转义字符,$可以写成任意字符)

查询员工的工种编号是IT_PROG、AD_VP中的一个员工名和工种编号

SELECT last_name,job_id FROM employees WHERE job_id='IT_PROG' OR job_id='AD_AP';
或者
SELECT last_name,job_id FROM employees WHERE job_id IN ('IT_PROG' , 'AD_AP');

查询没有奖金的员工名和奖金率
SELECT last_name,commission_pct FROM employees WHERE commission_pct IS NULL;
或者
SELECT last_name,commission_pct FROM employees WHERE commission_pct <=> NULL;

查询员工号为176的员工姓名,部门编号和年薪(commission奖金率可能为null值,需要用ifnull将null值转换成0)

SELECT last_name,department,salary12(1+ IFNULL (commission_pct,0)) AS 年薪 FROM employees WHERE job_id<=>176;

标签:last,name,employees,mysql,查询,条件,WHERE,id,SELECT
From: https://www.cnblogs.com/pdsgxlt/p/18117219

相关文章

  • java计算机毕业设计(附源码)榆林学院学术成果申报与管理(ssm+mysql+maven+LW文档)
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:榆林学院,位于陕西省的一所综合性高等学府,承载着培养高素质人才和推动地区科教发展的重要使命。随着国家对高等教育质量的持续关注和科研创新能力的不断提......
  • java计算机毕业设计(附源码)羽毛球馆场地管理系统(ssm+mysql+maven+LW文档)
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:在当今社会,随着人们生活水平的提高和对健康生活方式的追求,体育运动逐渐成为人们日常生活的重要组成部分。羽毛球作为一项深受大众喜爱的运动项目,在全球范......
  • 快速查询最新备案域名的Api接口
     快速查询最新备案域名的API接口是一种能够帮助用户根据时间段查询备案域名信息的工具。在这篇文章中,我将详细介绍该API接口的使用方法,并提供代码说明。首先,让我们来了解一下该API接口的基本信息。该接口是由挖数据平台提供的,可以根据用户输入的时间段,返回该时间段内备案的域......
  • MySQL 数据库重置密码
    1.Linux中MySQL数据库重置密码停止服务:systemctlstopmysql打开my.cnf(没有则创建一个):vim/etc/my.cnf在[mysqld]下添加:skip-grant-tables;[mysqld]skip-grant-tables启动数据库:systemctlstartmysqld重置密码:#无需密码,直接登录mysql-uroot-p#设置密码mys......
  • What is the difference between Mysql InnoDB B+ tree index and hash index? Why do
    原文:WhatisthedifferencebetweenMysqlInnoDBB+treeindexandhashindex?WhydoesMongoDBuseB-tree?|byMinaAyoub|MediumThemostimportantdifferencebetweenB-treeandB+treeisthatB+treeonlyhasleafnodestostoredata,andothernodes......
  • mysql 报错 ERROR 1396 (HY000): Operation ALTER USER failed for root@localhost 解
    mysql修改密码ALTERUSER‘root’@‘localhost’IDENTIFIEDBY‘123’;时,报错ERROR1396(HY000):OperationALTERUSERfailedforroot@localhost解决方案:2024-4-3段子手1681、首先连接权限数据库:mysql>usemysql;2、查看user主机名:mysql>selectuse......
  • 【MySQL系列】--SQL 执行顺序
    不想往后翻直接告诉我结论,好的:)FROM:获取第一张表,称为原表table1,获取第二张表,称为原表table2,将两张表做笛卡尔积,生成第一张中间表Temp1。ON:根据筛选条件,在Temp1上筛选符合条件的记录,生成中间表Temp2。JOIN:根据连接方式的不同,选择是否在Temp2的基础上添加外部行。左外......
  • mysql 数据库基本操作
    mysql数据库基本操作1、创建五张表–user表:后台用户表–product表:产品表–account表:客户账户表–product_account表:客户购买表–customer表:客户表2、创建表SQL语句:注意:下面SQL语句是直接在控制台创建表即:WIN+R-->cmd-->mysql-uroot-p密......
  • 回表查询是什么?如何避免
    回表查询就是使用索引后,还需要再次使用主键查找需要的数据列。首先我们需要知道数据库中索引的底层数据结构是B+树,B+树的叶子结点储存了索引对应的值以及主键值,如果是复合索引(多列索引),B+树的叶子结点就储存了多列的值和主键值。假设我们有一个名为user的MySQL表,它包含以下字......
  • 使用pip install mysqlclient命令安装mysqlclient失败?
    写在前面我们使用Django、flask等来操作MySQL,实际上底层还是通过Python来操作的。因此我们想要用Django来操作MySQL,首先还是需要安装一个驱动程序。在Python3中,驱动程序有多种选择。比如有pymysql以及mysqlclient等。常见的Mysql驱动介绍:MySQL-python:也就是MySQLdb。是对C语言操......