mysql简易笔记

MySQL笔记

当个云笔记吧,以后学了新的都会 及时 更新


数据库的概念(来自词条

DB DBMS SQL 数据库(database):存储数据的“仓库”。它保存了一系列有组织的数据。 数据库管理系统(Database Management System)。数据库是通过DBMS创 建和操作的容器 结构化查询语言(Structure Query Language):专门用来与数据库通信的语 言

常见的数据库管理系统:MySQL、Oracle、DB2、SqlServe


SQL语言

即结构化查询语言(Structured Query Language)
对关系型数据库适用,每个操作都是通过sql语句来下达(如果用没有GUI的数据库的话,比如MySQL

DML

DML(Data Manipulation Language):数据操纵语句,用于添加、删除、修改、查询数据库记录,并检查数据完整性。包括如下SQL语句等:

  • 添加数据到数据库中 INSERT
  • 修改数据库中的数据 UPDATE
  • 删除数据库中的数据 DELETE
  • 选择(查询)数据—— SELECT(用的最多,最重要
DDL

DDL(Data Definition Language):数据定义语句,用于库和表的创建、修改、删除。包括如下SQL语句等:

  • CREATE TABLE:创建数据库表
  • ALTER TABLE:更改表结构、添加、删除、修改列长度
  • DROP TABLE:删除表
  • CREATE INDEX:在表上建立索引
  • DROP INDEX:删除索引
DCL(不是大的项目暂时用不到了

DCL(Data Control Language):数据控制语句,用于定义用户的访问权限和安全级别包括如下SQL语句等:

  • GRANT:授予访问权限
  • REVOKE:撤销访问权限
  • COMMIT:提交事务处理
  • ROLLBACK:事务处理回退
  • SAVEPOINT:设置保存点
  • LOCK:对数据库的特定部分进行锁定

基本查询

命令

SELECT 语句

语法:SELECT *|{[DISTINCT] column|expression [alias],...}FROM table

  • SELECT 标识选择哪些列
  • FROM 标识从哪个表中选
例子:select 查询列表 from 表名;

ps.
1.查询列表可以是:表中的字段、常量值、表达式、函数
2.查询的结果是一个虚拟的表格

查询全部列:		SELECT *FROM 表名;

查询特定的列:	SELECT id, name FROM student;

查询表达式:		SELECT 100%98;

查询函数:		select now();
查询时给列的别名
使用asSELECT 列名1 AS "列1别名",列名2 AS "列2别名" FROM 表名;

案例:
SELECT 100%98 AS "结果";
SELECT last_name AS "姓",first_name AS "名" FROM employees;

使用空格:
SELECT 列名1 "列1别名",列名2 "列2别名" FROM 表名;

案例:
# 查询salary,显示结果为 out put
SELECT salary AS "out put" FROM employees;
查询去重
select distinct 字段名 from 表名;

# 案例:查询员工表中涉及到的所有的部门编号
SELECT DISTINCT department_id FROM employees;
+号(就是+号
# 直接运算
select 数值+数值;

# 先试图将字符转换成数值,如果转换成功,则继续运算;否则转换成0,再做运算
select 字符+数值;

# 结果都为null
select null+;
concat函数
连接符	类似"1"+"23"="123"

select concat(字符1,字符2,字符3,...);
ifnull函数

判断某字段或表达式是否为null,如果为null 返回指定的值,否则返回原本的值

# 如果commission_pct列为空则返回0
select ifnull(commission_pct,0) from employees;
isnull函数

判断某字段或表达式是否为null,如果是,则返回1,否则返回0


条件查询

使用WHERE 子句,将不满足条件的行过滤掉。
语法:select 查询列表 from 表名 where 筛选条件;

比较运算符		><>=<==<>		大于、小于、大于等于、小于等于、等于、不等于
				BETWEEN ...AND...			显示在某一区间的值(含头含尾)
				IN(set)						显示在in列表中的值,例:in(100,200)
				LIKE 通配符					模糊查询,Like语句中有两个通配符:% 用来匹配多个字符;
											例first_name like ‘a%’;_ 用来匹配一个字符。例first_name like ‘a_’;
				IS NULL						判断是否为空is null; 判断为空;is not null; 判断不为空
逻辑运算符		and (&&)					多个条件同时成立
				or (||)						多个条件任一成立
				not (!)						不成立,例:where not(salary>100);
例子
  1. 查询工资>12000的员工信息

SELECT
*
FROM
employees
WHERE
salary>12000;

  1. 查询部门编号不等于90号的员工名和部门编号

SELECT
last_name,
department_id
FROM
employees
WHERE
department_id<>90;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值