`
TRAMP_ZZY
  • 浏览: 140027 次
社区版块
存档分类
最新评论

MySQL学习笔记(一)

阅读更多
1. DBMS 分为两类
	(1)基于共享文件系统的DBMS(Microsoft Access)
	(2)基于客户机-服务器的DBMS

2. 返回数据库可用表的列表
	desc customers/describe orders/show columns from customers;
	
3. show status 显示广泛的服务器状态信息

4. show create database/show create table 显示创建特定数据库或表的MySQL语句。

5. show grants for/show grants for root@127.0.0.1显示授予用户的安全权限。

6. show errors 和 show warnings 显示服务器错误或警告信息。

7. select version();

8. select database();

9. 去除重复  select distinct vend_id from products;
	select vend_id from products group by vend_id;
	distinct 应用于所有的列。不能不分使用。
	select distinct vend_id, prod_price from products;
	
10. 限制结果 limit 
	select prod_name from products limit 5; = select prod_name from products limit 0, 5;
	带一个值的limit 总是从第一行开始,给出的数为返回的行数。
	带两个值的limit可以指定从行号为第一个值的位置开始。
	
	MySQL 5 支持 LIMIt 4 OFFSET 3 从第3行开始取4行
	select prod_name from products limit 1 offset 0;
	
11. 使用完全限定名(列的完全限定名和表的完全限定名)
	select products.prod_name from sqltest2.products;
	
12. 关系数据库的理论认为,如果不明确规定排序的顺序,则不应该嘉定检索出来的数据的顺序有意义。

13. 用非检索的列排序是完全合法的。

14. 排序方向
	DESC 降序排列
	ASC 升序排列
	select prod_id, prod_price, prod_name from products 
	order by prod_price desc, prod_name;
	
15. order by 和 limit 组合可以找出一个列中最高或最低的值。
	select prod_price from products order by prod_price desc limit 1;
	+------------+
	| prod_price |
	+------------+
	| 55         |
	+------------+
	
16. select prod_name, prod_price from products where prod_name = 'fuses';
	+-----------+------------+
	| prod_name | prod_price |
	+-----------+------------+
	| Fuses     | 3.42       |
	+-----------+------------+
	MySQL 在执行匹配时默认不区分大小写
	
17. NULL 值检测。
	select prod_name from products where prod_price is null;
	
18. AND 的优先级高级 OR		IN 操作符
	select prod_name, prod_price from products where vend_id in (1002, 1003);

19. NOT 用来否定之后的所有条件。MySQL 支持对IN、BETWEEN、EXISTS 字句取反
	select prod_name, prod_price from products where vend_id not in (1002, 1003);
	
20. % 通配符不能匹配NULL
	where prod_name like '%' 不能匹配用值NULL作为产品名的行
	
21. (_) 下滑线匹配单个字符。
	
22. 使用正则表达式过滤(REGEXP 可以用来匹配整个列值,使用定位符 ^或$)
	select prod_name from products where prod_name regexp '1000' order by prod_name;
	select prod_name from products where prod_name regexp '.000' order by prod_name;
	
	正则表达式的匹配部区分大小写。为区分大小写可使用BINARY关键字。
	select prod_name from products where prod_name regexp binary 'JetPack .000' order by prod_name;
	
	进行OR 匹配
	select prod_name from products where prod_name regexp '1000|2000' order by prod_name;
	
	匹配几个字符之一,用[] 表示。[^123] 表示不包含
	select prod_name from products where prod_name regexp '[123] Ton' order by prod_name;
	+-------------+
	| prod_name   |
	+-------------+
	| 1 ton anvil |
	| 2 ton anvil |
	+-------------+
	
	匹配范围
	0到9 [123456789] 或 [0-9] [a-z]
	select prod_name from products where prod_name regexp '[1-5] Ton' order by prod_name;
	+--------------+
	| prod_name    |
	+--------------+
	| .5 ton anvil |
	| 1 ton anvil  |
	| 2 ton anvil  |
	+--------------+
	
	匹配特殊字符,需要添加前导 \\(MySQL 的特殊要求)
	select prod_name from products where prod_name regexp '\\.' order by prod_name;
	+--------------+
	| prod_name    |
	+--------------+
	| .5 ton anvil |
	+--------------+
	\\f		换页
	\\n		换行
	\\r		回车
	\\t		制表
	\\v		纵向制表
	
	select prod_name from products where prod_name regexp '\\([0-9] sticks?\\)' order by prod_name;
	+----------------+
	| prod_name      |
	+----------------+
	| TNT (1 stick)  |
	| TNT (5 sticks) |
	+----------------+
	
	匹配连在一起的4位数字
	select prod_name from products where prod_name regexp '[[:digit:]]{4}' order by prod_name;
	select prod_name from products where prod_name regexp '[0-9]{4}' order by prod_name;
	+--------------+
	| prod_name    |
	+--------------+
	| JetPack 1000 |
	| JetPack 2000 |
	+--------------+
	
	定位符
	^		文本开始
	$		文本结尾
	[[:<:]]	词的开始
	[[:>:]]	词的结尾
	
	找出以一个数开始的所有产品(包括小数点)
	select prod_name from products where prod_name regexp '^[0-9\\.]' order by prod_name;
	+--------------+
	| prod_name    |
	+--------------+
	| .5 ton anvil |
	| 1 ton anvil  |
	| 2 ton anvil  |
	+--------------+
	
	简单的正则表达式测试
	select 'hello'	regexp '[0-9]';
	+-----------------------+
	| 'hello'	regexp '[0-9]' |
	+-----------------------+
	|                     0 |
	+-----------------------+
分享到:
评论

相关推荐

    数据库 MySQL 学习笔记高级篇.md

    数据库 MySQL 学习笔记高级篇.md

    MySQL学习笔记.zip

    这份“MySQL学习笔记”将引导我们深入理解其核心概念和实用技能。 一、MySQL简介 MySQL是一个开源、免费的数据库系统,由瑞典的MySQL AB公司开发,后被Oracle公司收购。它的设计目标是速度、可移植性和简洁性,支持...

    mysql学习笔记(一).txt

    mysql入门学习笔记整理,如何创建数据库、查看数据库,删除数据库,创建表和对表字段类型操作、约束、mysql数据类型整理

    MySQL学习笔记 MySQL学习笔记

    MySQL是世界上最受欢迎的关系型数据库管理系统之一,尤其在Web应用程序中被广泛使用。了解并掌握MySQL对于任何想要从事IT行业的人员,尤其是数据管理、开发或系统管理员来说,都是至关重要的技能。 一、为什么学习...

    MySQL学习笔记.chm

    MySQL学习笔记.chmMySQL学习笔记.chmMySQL学习笔记.chmMySQL学习笔记.chm

    mysql学习笔记.rar

    这份"mysql学习笔记.rar"包含的资源旨在帮助初学者和有经验的开发者深入理解和掌握MySQL的相关知识。 首先,"mysql学习笔记.doc"很可能是核心的学习资料,它可能包含了MySQL的基础概念、安装与配置、SQL语言基础、...

    Mysql学习笔记.pdf

    MySQL 是一款广泛使用的开源关系型数据库管理系统,其学习笔记涵盖了多个关键知识点。以下是对这些知识点的详细解释: 1. **MySQL 体系架构** - **网络连接层**:处理客户端的连接请求,包括连接管理、认证和安全...

    MySQL核心技术学习笔记

    ### MySQL核心技术学习笔记 #### 一、为什么要学习数据库 学习数据库的重要性主要体现在以下几个方面: 1. **持久化数据到本地**:数据库能够将应用程序产生的数据持久化存储在磁盘上,即使系统重启也不会丢失...

    Mysql学习笔记1

    ### MySQL学习笔记1:深入理解内连接与外连接 #### 一、引言 在数据库管理与查询过程中,连接操作是十分常见且重要的一个环节。MySQL作为一种广泛使用的开源关系型数据库管理系统,在处理复杂的多表查询时,提供了...

    MySQL学习笔记

    ### MySQL学习笔记知识点详解 #### 一、数据库概述 数据库是指按照特定的数据结构来组织、存储和管理数据的集合体。随着信息技术的进步和社会需求的增长,数据库已经从最初的简单存储发展成为用户所需的各种复杂...

    mysql学习笔记.xmind

    非常详细的mysql学习笔记,3积分绝对值。内容分为基础架构、日志系统、事务隔离、索引、锁、sql偶尔变慢的问题、数据空洞、排序、慢sql解析九大模块。

    MySQL学习笔记666

    mysql学习笔记

    mysql 个人学习笔记

    MySQL是世界上最受欢迎的关系型数据库管理...以上只是MySQL学习笔记的一部分内容,实际的学习过程中,你还会接触到触发器、分区、复制、集群等更高级的主题。不断实践和深入研究,才能真正掌握这个强大的数据库系统。

    MySQL学习笔记.pdf

    MySQL学习笔记.pdf MySQL学习笔记主要涵盖了 MySQL 服务器的基本操作、数据库管理、数据表的创建和管理、数据的crud 操作、约束的添加和删除等内容。 一、登录和退出 MySQL 服务器 在 MySQL 学习笔记中,首先...

    MySQL学习笔记-JSP操作MySQL

    从给定的文件信息来看,本文档主要围绕“MySQL学习笔记—JSP操作MySQL”的主题展开,详细介绍了如何在JSP环境下操作MySQL数据库的过程。以下是对该文档中的关键知识点进行的深入解析: ### 一、MySQL与JSP的集成 ...

    MySql学习笔记

    在MySQL学习过程中,了解和掌握基本的命令是非常重要的。以下是一些关键知识点的详细解释: 1. **显示数据库**: 使用`SHOW DATABASES;`命令可以列出当前MySQL服务器上存在的所有数据库。 2. **创建数据库**: `...

    一千行 MySQL 学习笔记.pdf

    ### MySQL学习笔记知识点详解 #### 一、MySQL服务管理 **1. 启动MySQL服务** 在Windows环境中,可以通过以下命令启动MySQL服务: ```sql net start mysql ``` **2. 创建Windows服务** 若要手动创建一个...

    mysql学习笔记

    这份“mysql学习笔记”涵盖了MySQL的基础知识,包括但不限于数据库的概念、SQL语言的使用、以及更深入的多表操作。 在“day08入门笔记”中,你可能会学到以下内容: 1. **数据库基本概念**:了解什么是数据库,...

    MySQL学习笔记(含基础、运维、进阶三部分)

    MySQL学习笔记(含基础、运维、进阶三部分) MySQL学习笔记(含基础、运维、进阶三部分) MySQL学习笔记(含基础、运维、进阶三部分) 包含了我学习 MySQL 过程中的笔记和资源,从入门到进阶的内容都有涉及。通过...

Global site tag (gtag.js) - Google Analytics