MySQL核心技术(基础篇)

2020年6月 Mark
Tool: SQLyog OR Navicat
本文参考视频教程:“尚硅谷MySQL核心技术”,整理笔记如下。
本文主要目的快速地抓取MySQL基础的主要知识点,全文都是手打的,没有复制粘贴,记录可能有不恰当之处


DQL 查询
DML 操作 增删改
DDL 定义
TCL 事务控制语言

其中,MyISAM不支持事务,需要设置数据库类型为InnoDB(支持事务控制)
MyISAM增删操作时,只有表锁,会锁住整个表格;而InnoDB可以采用行级锁
前者以类似于数组方式存储数据,访问速度很快;后者InnoDB以B+树存储。

DQL 查询篇 (一)

语法 --不区分大小写,’’、""通用,数据库索引从1开始。

$.语句顺序

# 语法执行顺序,实际where在select之前执行。
SELECT __查询列表
FROM __表1
JOIN __表2 ON __连接条件 # [INNER] LEFT RIGHT FULL CROSS [OUTER]
WHERE __筛选条件
GROUP BY __分组字段
HAVING __分组后的字段
ORDER BY __排序字段 # [DESC/ASC]
LIMIT __ ;

1.基础查询 SELECT

SELECT VERSION();
SELECT IFNULL(fieldName,0) AS 结果; //手动将NULL值视为0
SELECT 10*3; //30
SELECT CONCAT(field1,",",field2) AS cont;

支持!=,但是<>更加规范。(包容性)

2.条件查询 WHERE

BETWEEN AND, IN --提高语句的简洁度

SELECT DISTINCT * from table; # 去重

WHERE `name` like '__n_l%'; # 单字符 多字符 # 通配符
WHERE `name` like '_$%' ESCAPE '$'; # 转义 \_ \$

WHERE `id` BETWEEN 10 AND 20; # 闭区间 [10,20] 相当于>= <=
WHERE `job` IN ('A','B','C'); # 相当于 "="
IS NULL; IS NOT NULL; =200; 安全等于 <=>

and&& or|| not!

3.排序查询 ORDER BY

ORDER BY
`salary` [ASC|DESC];
LENGTH(`name`);

函数篇:单行函数

CONCAT LENHTH IFNULL
… 组函数/分组函数/统计函数/聚合函数

1.字符函数 CONCAT SUBSTR

-- 中文:utf8三字节 gbk二字节
SELECT
LENGTH('john');
UPPER('john');
CONCAT('VON','_','JOHN');
SUBSTR('李莫愁爱上了陆展元',7); # 数据库索引,从1开始
SUBSTR('李莫愁爱上了陆展元',1,3);
INSTR('杨不悔爱上了殷六侠', '不') AS output; # 返回索引2
TRIM("  123   "); #123
TRIM(
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值