mysql学习第二天
SHOW DATABASES;
#运算符
#1.算术运算符:+ - * / div % mod
SELECT 100,100+0,100+50,100+50*30,100+35.5,100-35.5
FROM DUAL;SELECT 100+'1'#在sql中+ 没有连接的作用 就表示加法运算。此时,会将字符串转换为数值(隐式转换)
FROM DUAL;SELECT 100+'a' #此时将‘a‘看做0来处理
FROM DUAL;SELECT 100+NULL #null值参与运算,结果为null
FROM DUAL;SELECT 100,100*1,100*1.0,100/1.0,100/2,100 DIV 0
FROM DUAL;
#查询员工id为偶数的员工信息
SELECT employee_id,last_name,salary
FROM employees
WHERE employee_id%2 = 0;
#2.比较运算符
#2.1 = <=> <> !=
SELECT 1=2,1!=2,1='1',1='a',0='a'#字符串存在隐式转换。0='a' 如果转换不成功,则看做0
FROM DUAL;SELECT 'a'='a','ab'='ab','a'='b' ##两边都是字符串的话,则按照ANsi的比较规则进行比较FROM DUAL;
#取模运算:%mod
SELECT 12%3,12%5,12 MOD -5,-12 % 5,-12% -5
FROM DUAL;#结果的符号与被模数的符号一致
#查询员工ID为偶数的员工信息
SELECT *FROM employees;
SELECT employee_id,job_id
FROM employees
WHERE employee_id%2=0;SELECT last_name, salary
FROM employees
WHERE commission_pct=NULL;#此时执行不会有任何的结果
#<=>安全等于 可以用null来进行判断
SELECT 1<=>NULL,NULL<=>NULL
FROM DUAL;SELECT last_name,salary,commission_pct
FROM employees
WHERE ISNULL(commission_pct);
#LEAST()\GREATEST
SELECT LEAST('g','b','t','m'),GREATEST('g','b','t','m')
FROM DUAL;SELECT LEAST(first_name,last_name),LEAST(LENGTH(first_name),LENGTH(last_name))
FROM employees;#BETWEEN..条件下界.AND 条件上界
SELECT employee_id,last_name,salary
FROM employees
WHERE salary BETWEEN 6000 AND 8000;
#in(set)\not in(set)
SELECT employee_id, last_name, salary, manager_id
FROM employees
WHERE manager_id IN (110, 101, 201,103);SELECT employee_id,last_name,salary
FROM employees
WHERE salary NOT IN (6000,7000);
#模糊查询
#练习:查询last_name中包含字符‘a’的员工信息
# %:代表不确定个数的字符(0个,1个,或多个)
SELECT last_name
FROM employees
WHERE last_name LIKE '%a%';
#练习:查询last_name中包含字符‘a’且包含字符‘e’的员工信息
SELECT last_name
FROM employees
WHERE last_name LIKE '%a%' OR last_name LIKE '%e%';#查询第2个字符是‘a’的员工信息
SELECT last_name
FROM employees
WHERE last_name LIKE '_a%';
#练习查询第2个字符是_且第3个字符是‘a’的员工信息
#需要使用转义字符\
SELECT last_name
FROM employees
WHERE last_name LIKE '_\_a%'
#正则表达式
#REGEXP\RLIKE:正则表达式
SELECT last_name REGEXP '^K'
FROM employees;
#逻辑运算符
SELECT last_name,salary,department_id
FROM employees
#where department_id=10 and department_id=20;
WHERE department_id=50 AND salary>6000;
#XOR追求的"异"
SELECT last_name,salary,department_id
FROM employees
WHERE department_id=50 XOR salary>6000;
#练习
SELECT*FROM employees;
# 1.选择工资不在5000到12000的员工的姓名和工资
SELECT last_name,salary
FROM employees
WHERE salary NOT BETWEEN 5000 AND 12000;# 2.选择在20或50号部门工作的员工姓名和部门号
SELECT last_name,department_id
FROM employees
WHERE department_id IN(20,50);
# 3.选择公司中没有管理者的员工姓名及job_id
SELECT last_name,job_id
FROM employees
WHERE manager_id IS NULL;
# 4.选择公司中有奖金的员工姓名,工资和奖金级别
SELECT last_name,job_id,commission_pct
FROM employees
WHERE commission_pct IS NOT NULL;
# 5.选择员工姓名的第三个字母是a的员工姓名
SELECT last_name,job_id,commission_pct
FROM employees
WHERE last_name LIKE '__a%';
# 6.选择姓名中有字母a和k的员工姓名
SELECT last_name,job_id,commission_pct
FROM employees
WHERE last_name LIKE '%a%k%' OR last_name LIKE '%k%a%';
# 7.显示出表 employees 表中 first_name 以 'e'结尾的员工信息
SELECT first_name,salary
FROM employees
WHERE first_name LIKE '%e';
#方式二
SELECT first_name,salary
FROM employees
WHERE first_name REGEXP 'e$';
# 8.显示出表 employees 部门编号在 80-100 之间的姓名、工种
SELECT first_name,salary,department_id
FROM employees
WHERE department_id BETWEEN 80 AND 100;
# 9.显示出表 employees 的 manager_id 是 100,101,110 的员工姓名、工资、管理者id
SELECT first_name,salary,department_id,manager_id
FROM employees
WHERE manager_id IN(100,101,110);
mysql学习第二天相关推荐
- Mysql学习-第二章(CBO工作原理)
MySQL 优化器是 CBO,即一种基于成本的优化器. 在关系型数据库中,B+ 树索引只是存储的一种数据结构,具体怎么使用,还要依赖数据库的优化器,优化器决定了具体某一索引的选择,也就是常说的执行计划 ...
- Mysql学习-第二章(组合索引)
组合索引是指多个列所组成的B+树索引,既可以是主键索引,也可以是二级索引组合,下图为一个索引图 组合索引(a,b),(b,a)完全不同 示例,组合索引(a,b),对列ab进行排序 SELECT * F ...
- MySQL学习第二天—操作数据库\数据表命令
文章目录 一.登录数据库 二.基本数据库操作命令 1. 操作数据库 1.1 创建数据库 1.2 删除数据库 1.3 查看数据库 1.4 使用数据库 1.5 其他操作 2.操作数据表 2.1 创建数据表 ...
- MySQL学习第二天之DML和DDL
MySQL DML介绍 插入语句 修改语句 删除语句 DDL介绍 库和表的管理 常见数据类型 常见约束 标识列 DML介绍 DML(Data Manipulation Language –数据操纵语言 ...
- 软件测试学习第二周--MySQL
第二周--MySQL学习 四大基本操作 1.1 增 1.1.1 新建数据库 1.1.2新建表 1.1.3插入新数据 1.2 删 1.2.1 删除数据库 1.2.2 删除数据表 1.2.3 删除数据 1 ...
- 焱老师带你学习MYSQL系列 第二篇 (MYSQL 数据结构)
相关系列链接 焱老师带你学习MYSQL系列 第六篇 (MYSQL是如何实现锁的) 焱老师带你学习MYSQL系列 第五篇 (MYSQL事务隔离级别是如何实现的) 焱老师带你学习MYSQL系列 第四篇 ( ...
- 我的MYSQL学习心得(十六) 优化
原文:我的MYSQL学习心得(十六) 优化 我的MYSQL学习心得(十六) 优化 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看 ...
- 初识mysql学习笔记
使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...
- MySQL学习笔记04【数据库的查询操作、今日内容、表的约束】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
最新文章
- MIMOSA2: 基于微生物组和代谢组数据的整合分析
- 个人作业——福大微信公众号使用评测
- Servlet使用适配器模式进行增删改查案例(Emp.java)
- 第13章 程序的动态加载和执行(一,引导)
- 2019 - OO第一单元作业总结
- Java常用框架有哪些?
- 阿里云loT物联网学习
- rufus 制作U盘启动工具
- 【codeforces 527A】Playing with Paper
- 【IDEA】 弹出Server's certificate is not trusted 解决方法
- 如何在服务器上配置深度学习环境
- TP6 TP5 Db‘ not found
- CYPRESS代理铁电存储器中文资料FM25V05-GTR
- 时间控件-时分秒/分秒/年月日
- DRL:强化学习-Q-Learning算法
- 什么是平台,为何能成为平台?我们缘何进入了一个被平台控制的世界?
- kettle简介及下载
- CSS基础之媒体类型(@media)样式
- 隐藏域hidden的使用-HTML入门基础(024)
- 2021ArchLinux安装图文教程