一、SQL分类:
DDL;数据定义语言;凡是带有create、drop、alter等数据定义语言(主要操作的是表的结构,不是表的数据。)
DQL:数据查询语言;凡是带有select关键字的都是数据查询语言;eg: select........
DML:数据操作语言;凡是对表中的数据进行增、删、改等操作的都是DML
update、Insert、delete;
TCL:事务控制语言;包括事务提交(commit)、事务回滚(rollback)
DCL:数据控制语言;例如;授权qrant、撤销权限revoke
二、如何导入sql文件中的数据
source +文件的路径(注意路径中不要有中文)
(1)不看表的数据,只看表的结构的命令
desc 表名
#演示删除和查询数据库
#查当前数据库服务器中所有的数据库
SHOW DATABASES
#查看前面创建的数据库的定义信息
SHOW CREATE DATABASE west
#在创建数据库表的时候,为了规避关键字,可以使用反单引号解决(tab上面的按键)
#create database `int`
#删除数据库表(删除表时候需要慎重)
DROP DATABASE `int`
#备份数据库(要在DOS下执行mysqldump指令)
#要求备份west文件中的数据,并恢复
#备份数据库的格式:mysqldump -u 用户名 -p -B 数据库1 数据库2 数据库3 数据库n >\\文件名.sql
#恢复数据库(注意:使用DOS时候要进入mysql命令行(mysql -u root -p)再执行):Source 路径:\\ 文件名.sql
#1.起别名
#第一种方法:使用AS的形式
SELECT 99*10 AS 答案;
#方式2:使用空格的形式
SELECT 88*20 答案;
#2.去重:在select的后面加distinct
#3.mysql中 +号的作用(充当运算符)
/*
如果两个操作数进行运算:
select '123'+99; 只要其中一方为字符型,会试图将字符型转换为数值型;
如果转换成功,则继续做加法运算;
如果转换失败,则将字符型转换为0
select null+99;只要一方为null,则结果一定为null;
*/
#4.条件查询
/*
语法:select 查询列表 from 表名 where 筛选条件
筛选条件的分类:
一、按条件表达式筛选:条件运算符:< > = >= <= <>(不等于)
二、按逻辑表达式筛选:
逻辑运算符: && || ! and or not
三、模糊运算: like 、between and 、 is null
案例一、查询工资>12000的员工信息(条件运算符)
select * from employ where salary >12000;
案列二、查询部门编号不等于90的员工名和部门编号(条件运算符)
select last_name,department_id from employ where department <>90;
案列三:查询工资在10000到20000之间的员工名,工资,奖金;(逻辑运算符)
select last_name ,salary,commission_pet from emploee where salary >=10000 and salary <=20000;
*/
/*
模糊查询:
一、like : 一般和通配符搭配使用;
通配符:1. %代表任意多个字符,包含0个字符
2. _任意单个字符
案列:查询员工中第三个字符为e,第五个字符为n的员工名和工资
select last_name, salary from employ where last_name like '__e_n%';
#案例3:查询员工名中第二个字符为_的员工名
select last _name from employ where like '_\_%'; (\表示转意字符)
select last _name from employ where like '_$_%'ESCAPE $;
二、between and (注意:临界值包含在内)
三、in关键字: 用于判断某字段的值是否属于in列表中的某一项(注意:IN列表的值类型要保持统一和兼容)
#案例:查询员工的工种编号是 IT_PROG、AD_VP、AD_PRES中的一个员工名和工种编号
SELECT last _name, job_id from employ where IN (IT_PROG,AD_VP,AD_PRES);
四、 is null
案列;查询没有奖金的员工名和奖金率
select last_name, commission_pct from employ where commission_pct Is NULL;
五、安全等与 <=> 其作用是判断是否等与
案列;查询没有奖金的员工名和奖金率
select last_name, commission_pct from employ where commission_pct <=> NULL;
*/
标签:last,name,数据库,知识,employ,MySQL,相关,where,select From: https://www.cnblogs.com/nzm-2019/p/16706044.html