首页 > 数据库技术 > 详细

《MYSQL必知必会》第1~9章

时间:2019-10-30 23:01:11      阅读:95      评论:0      收藏:0      [点我收藏+]

?数据库基础

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

表:某种特定类型数据的结构化清单

列:表中的一个字段数据类型:所容许的数据的类型

行:表中的一个记录

主键:一列,其值能够唯一区分表中每个行

SQL是结构化查询语言(Structured Query Language)的缩写

 

MYSQL 简介

MYSQL是一种DBMS(数据库管理系统),即它是一种数据库软件

MYSQL、ORACLE以及MICROSOFT SQL SERVER等数据库是基于客户机-服务器的数据库。

数据操作流程:用户->客户机->服务器->客户机->用户

 

使用MYSQL

选择数据库:USE 数据库名

显示所有数据库:SHOW DATABASES

显示某一数据库下的表:SHOW TABLES

 

检索数据

检索列:SELECT 第一个列,第二个列,,,, FROM 表名

检索所有列:SELECT * FROM 表名

检索结果中重复的列只出现一次:SELECT DISTINCT 列名 FROM 表名

限制结果:SELECT 列名 FROM 表名 LIMIT 数字

SELECT 列名 FROM 表名 LIMIT 数字1,数字2 (从行数字1开始的数字2行,注意行数从零开始)

 

排序检索数据

升序:SELECT 列名 FROM 表名 ORDER BY 列名

降序:SELECT 列名 FROM 表名 ORDER BY 列名 DESC

 

过滤数据

过滤:SELECT 列名 FROM 表名 WHERE 列名需满足的条件

例子:SELECT prod_name,prod_price FROM products WHERE prod_price BETWEEN 5 AND 10

空值检查:SELECT 列名 FROM 表名 WHERE 列名 IS NULL

AND操作符:SELECT  列名 FROM 表名 WHERE 列1满足条件1 AND 列2满足条件2

OR操作符:SELECT  列名 FROM 表名 WHERE 列1满足条件1 OR 列2满足条件2

(注意,AND 操作符的优先级大于OR操作符)

IN操作符:SELECT 列名 FROM 表名 WHERE 列名 IN (a,b)

NOT操作符:SELECT 列名 FROM 表名 WHERE 列名 NOT IN (a,b)

(a,b)是枚举!不是范围!NOT 是取反

 

用通配符过滤

通配符:用来匹配值的一部分的特殊字符

LIKE操作符:WHERE 列名 LIKE ‘字符组合’(LIKE字符是全匹配,与REGEXP匹配部分不同)

%通配符:%表示任何字符出现任意次数

下划线通配符:_ 表示任何字符出现一次

 

正则表达式进行搜索

正则表达式:用来匹配文本的特殊的串

REGEXP操作符:WHERE 列名 REGEXP ‘字符组合’(列值包含字符组合即满足要求)

区分大小写:WHERE 列名 REGEXP BINARY  ‘字符组合’

OR匹配:WHERE 列名 REGEXP ‘值1|值2‘

匹配几个字符之一:WHERE 列名 REGEXP ‘[字符1字符2字符3]’

匹配范围:WHERE 列名 REGEXP ‘[0-9]’

匹配特殊字符:WHERE 列名 REGEXP ‘\\.’ 

(因为 . 匹配任意字符,所以需用转义字符)

[:lower:] [:upper:] [:cntrl:] [:alnum:] [:print:] ......

 匹配多个实例:

*  0个或多个匹配 

+ 一个或多个匹配 

? 0个或一个匹配 

{n} 指定数目的匹配

{n,}不少于指定数目的匹配

{n,m}匹配数目的范围  

例子1:WHERE 列名 REGEXP ‘\\([0-9] sticks?\\)’

匹配结果:

TNT (1 stick)

TNT   (5 sticks)

?匹配它前面的任何字符的0次或1次出现

例子2:WHERE 列名 REGEXP ‘[[:digit:]]{4}’ (同[0-9][0-9][0-9][0-9])

定位符:

^  文本的开始

$  文本的结尾

[[:<:]] 词的开始

[[:>:]] 词的结尾

例子:WHERE 列名 REGEXP ‘^[0-9]’

只有文本开始是数字才满足条件

 

《MYSQL必知必会》第1~9章

原文:https://www.cnblogs.com/czw716/p/11768400.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!