《MySQL必知必会》学习笔记【1-10章】

MySQL必知必会读书笔记,要点记录

 

一 了解SQL

1 数据库: 保存有组织的数据的容器

  数据库软件:DBMS,数据库管理系统

2 表:某种特定类型数据的结构化清单,名字唯一,储存同一类型数据

3 模式:关于数据库和表的布局以及特性信息

4 列: 表中的一个字段,所有表均由一个或多个列构成,每个列有自己的数据类型

5 行:表中的一个记录

6 主键:一(或一组)列,其值能够唯一区分表中每个行,应该总是定义主键,且有两个条件:

任意两行都不具有相同主键值

每行必须有一个主键值(不允许为NULL)

主键的好习惯: 不更新,不重用,不使用可能会更改的值

7 SQL 结构化查询语言

 

二 MySQL简介

1 MySQL是一种DBMS,是基于客户机-服务器的数据库。每个MySQL都安装有一个名为mysql的简单命令行实用程序。注意:

  • 命令以;或\g结束
  • 输入help或\h获得帮助
  • quit或exit退出命令行实用程序

2 图形交互客户机: MySQL Administrator, MySQL Query Browser

 

三 使用SQL

1 默认端口3306

2 USE:打开一个数据库

3 内部的表一般不直接访问,可用SHOW命令显示,如

SHOW DATABASES;
​
SHOW TABLES;
​
SHOW COLUMNS FROM 表名(貌似跟DESC 表名的结果一样)
​
SHOW STATUS;
​
SHOW CREATE DATABASE/TABLE;
​
SHOW GRANTS;
​
SHOW ERRORS/WARNINGS;

四 检索数据

1 最常用命令SELECT,从一个或者多个表格中检索信息

2 mysql命令行必须以分号;作为结尾,SQL语句不区分大小写,惯例是对所有SQL关键词使用大写,对所有列和表名使用小写

3 检索多个列,列名之间以逗号分割,SQL语句一般返回原始的,无格式的数据

4 给定通配符*能返回表中所有的列,使用SELECT DISTINCT可以指示只返回不同的值

5 为了返回第一行或前几行,可使用LIMIT子句。如 LIMIT 3,4 为返回从第3行开始的4行。带一个值的LIMIT指的是从第一行开始

6 可使用完全限定的名字来引用列 table.column

 

五 排序检索顺序

1 SQL由子句构成,一个子句通常由一个关键字和所提供的数据组成

2 ORDER BY可以用来对检索出的数据进行排序,按多个列排序只需用逗号分开即可

3 降序排序在后面加 DESC关键字,多个列降序排序需要每个列都指定DESC关键字

 

六 过滤数据

1 WHERE子句用于指定搜索条件

2 MySQL在执行匹配时默认不区分大小写

3 在将值与串类型进行比较时需要限定引号,用来与数值列进行比较时不用引号

4 检查某个范围的值可以用 BETWEEN,其包括开始值与结束值

5 NULL为无值。与字段包含0,空字符串或者只包含空格不同,有 IS NULL可以用来判定

 

七 过滤数据

1 操作符:用于联结或改变WHERE子句中的子句的关键字,也称为逻辑操作符

2 AND、OR,连用时最好结合圆括号使用

3 IN 用来指定条件范围

4 NOT否定之后的所有条件,在MySQL中支持对 IN,BETWEEN和EXISTS子句取反

 

八 利用通配符进行过滤

1 通配符:用于匹配值的一部分的特殊字符,为在搜索子句中使用通配符,必须使用LIKE操作符

2 最常用的是百分号%,表示任何字符出现的任意次数,如 %123%表示匹配任何位置包含文本123的值

3 下划线_ 用于匹配一个字符

 

九 用正则表达式进行搜索

1 .是正则表达式语言中的特殊字符,表示匹配任意一个字符

2 用REGEXP代替LIKE

3 |表示正则表达式 的OR操作符

4 []是另一种形式的OR语句,如[123]表示匹配1或2或3,[1-9]表示匹配1到9,[a-z]表示任意字母字符

5 匹配特殊字符必须用\\为前导

6 匹配字符类

 

7 重复元字符

如 [:digit:]{4}表示匹配连在一起的任意4位数字

8 定位符

如 ^[0-9] 表示以一个数开始的所有数据

 

十 创建计算字段

1 计算字段是在运行SELECT语句内创建的,字段基本与列的含义相同,在数据库多称列,计算字段时多用术语字段

2 拼接字段:

多数DBMS: + 或 ||

MySQL:Concat() 函数, 把多个串连接起来形成一个较长的串

如:

SELECT Concat(C1, '(' , C2,')') FROM ...

3 RTrim去掉右边空格, LTrim去掉左边空格,Trim去掉左右两边的空格

4 AS 赋予别名,如 S

ELECT Concat(C1, '(' , C2,')')  AS newname FROM ...

别名也被称为导出列

5 算数操作符 + - * /

 SELECT C1*C2 AS newname FROM ...

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值