`
wx1568520008
  • 浏览: 20429 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

最近学习MySQL的一些笔记

 
阅读更多

f6df2675037e753891954f08541414c7747.jpg

1f6652864c1d0ee6b20a0a5824935f24d76.jpg

SQL 语句分类

  1. Data Definition Language (DDL 数据定义语言) 如:建库,建表
  2. Data Manipulation Language(DML 数据操纵语言)如:对表中的记录操作增删改
  3. Data Query Language(DQL 数据查询语言),如:对表中的查询操作
  4. Data Control Language(DCL 数据控制语言),如:对用户权限的设置

 

MySQL 的语法

  1. 每条语句以分号结尾,如果在 SQLyog 中不是必须加的。  
  2. SQL 中不区分大小写,关键字中认为大写和小写是一样的  
  3. 3 种注释:

注释的语法

说明

--空格

单行注释

/* */

多行注释

#  

这是 mysql 特有的注释方式

 

 

创建数据库的几种方式

创建数据库  

CREATE DATABASE 数据库名;

判断数据库是否已经存在,不存在则创建数据库  

CREATE DATABASE IF NOT EXISTS 数据库名;

创建数据库并指定字符集  

CREATE DATABASE 数据库名 CHARACTER SET 字符集;

查看所有的数据库  

show databases;

修改数据库默认的字符集

ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集;     

 删除数据库的语法

DROP DATABASE 数据库名;

 查看正在使用的数据库  

SELECT DATABASE();  使用的一个 mysql 中的全局函数

6.5.2 使用/切换数据库  

USE 数据库名;

创建表的格式

CREATE TABLE 表名 ( 字段名 1 字段类型 1,  字段名 2 字段类型 2 );

 

7.1.2 关键字说明:

创建表的关键字

说明

CREATE

创建

TABLE

 

常使用的数据类型如下:

18306b02f719cc149ecf218213bb4062f4f.jpg

 

查看某个数据库中的所有表  

SHOW TABLES;

 

查看表结构  

DESC 表名;     

 

 

查看创建表的 SQL 语句  

SHOW CREATE TABLE 表名;

快速创建一个表结构相同的表语法

CREATE TABLE 新表名 LIKE 旧表名;

直接删除表  

DROP TABLE 表名;

判断表是否存在,如果存在则删除表  

DROP TABLE IF EXISTS 表名;

添加表列 ADD

ALTER TABLE 表名 ADD 列名 类型;     

修改列类型 MODIFY

ALTER TABLE 表名 MODIFY列名 新的类型;

 修改表名

RENAME TABLE 表名 TO 新表名;

 修改字符集 character set

ALTER TABLE 表名 character set 字符集;

 

插入记录

INSERT [INTO] 表名 [字段名] VALUES (字段值)

INSERT INTO 表名:表示往哪张表中添加数据

(字段名 1, 字段名 2, …)要给哪些字段设置值

VALUES (1, 2, …)设置具体的值

 

  1. 所有的字段名都写出来  

INSERT INTO 表名 (字段名1, 字段名2, 字段名3…) VALUES (值1, 值2, 值3);

 

不写字段名  

INSERT INTO 表名 VALUES (1, 2,

3…);

 

插入部分数据

 

INSERT INTO 表名 (字段名1, 字段名2,

...) VALUES (1, 2, ...);

 

查看包含 character 开头的全局变量

show variables like 'character%';

  1. 将表名2中的所有的列复制到表名1中

INSERT INTO 表名 1 SELECT * FROM 表名 2;

  1. 将表名2中的所有的列复制到表名1中

INSERT INTO 表名 1 SELECT * FROM 表名 2;

更新表记录

UPDATE 表名 SET 列名= [WHERE 条件表达式]  

UPDATE: 需要更新的表名

SET: 修改的列值

WHERE: 符合条件的记录才更新

不带条件修改数据  

UPDATE 表名 SET 字段名=值;  -- 修改所有的行

带条件修改数据  

UPDATE 表名 SET 字段名=值 WHERE 字段名=值;

DELETE FROM 表名 [WHERE 条件表达式]

如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。

你可以在 WHERE 子句中指定任何条件     

 

不带条件删除数据  

DELETE FROM 表名;

带条件删除数据  

DELETE FROM 表名 WHERE 字段名=值;

    

使用 truncate 删除表中所有记录  

TRUNCATE TABLE 表名;

 

       truncate 和 delete 的区别: truncate 相当于删除表的结构,再创建一张表。

 

-- 带条件删除数据,删除id为1的记录 delete from student where id=1;

 

-- 不带条件删除数据,删除表中的所有数据 delete from student;

DQL 查询表中的数据查询不会对数据库中的数据进行修改.只是一种显示数据的方式

SELECT 列名 FROM 表名 [WHERE 条件表达式]  

  1. SELECT 命令可以读取一行或者多行记录。
  2. 你可以使用星号(*)来代替其他字段,SELECT 语句会返回表的所有字段数据
  3. 你可以使用 WHERE 语句来包含任何条件。

 

查询表所有行和列的数据

l 使用*表示所有列  

SELECT * FROM 表名;

 查询指定列

  1. 查询指定列的数据,多个列之间以逗号分隔  

SELECT 字段名1, 字段名2, 字段名3, ... FROM 表名;

  1. 对列指定别名

SELECT 字段名1 AS 别名, 字段名2 AS 别名... FROM 表名;     

  1. 对列和表同时指定别名

SELECT 字段名1 AS 别名, 字段名2 AS 别名... FROM 表名 AS 表别名;

查询指定列并且结果不出现重复数据

SELECT DISTINCT 字段名 FROM 表名;

 某列数据和固定值运算  

SELECT 列名 1 + 固定值 FROM 表名;

某列数据和其他列数据参与运算  

SELECT 列名 1 + 列名 2 FROM 表名;

 

 条件查询的语法

SELECT 字段名 FROM 表名 WHERE 条件;

流程:取出表中的每条数据,满足条件的记录就返回,不满足条件的记录不返回

 

  1. 运算符

比较运算符

说明

><<=>==<>

<>在 SQL 中表示不等于,在 mysql 中也可以使用!= 没有==

BETWEEN...AND

在一个范围之内,如:between 100 and 200 相当于条件在 100 到 200 之间,包头又包尾

IN(集合)

集合表示多个值,使用逗号分隔

LIKE '%'

模糊查询

IS NULL

查询某一列为 NULL 的值,注:不能写=NULL

 

  1. 逻辑运算符

 

逻辑运算符

说明

and &&

与,SQL 中建议使用前者,后者并不通用。

or ||

not !

 

  1. in 关键字  

SELECT 字段名 FROM 表名 WHERE 字段 in (数据 1, 数据 2...);

in 里面的每个数据都会作为一次条件,只要满足条件的就会显示

 

  1. 范围查询

BETWEEN 1 AND 2

表示从值 1 到值 2 范围,包头又包尾

比如:age BETWEEN 80 AND 100 相当于: age>=80 && age<=100

 

  1. like 关键字

LIKE 表示模糊查询

SELECT * FROM 表名 WHERE 字段名 LIKE '通配符字符串';

转载于:https://my.oschina.net/u/4167465/blog/3078376

分享到:
评论

相关推荐

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

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

    MySQL学习笔记 MySQL学习笔记

    MySQL是世界上最受欢迎的关系型数据库管理系统之一,尤其在Web应用...学习MySQL不仅涉及理论知识,还需要大量的实践操作来熟悉其语法和功能。掌握MySQL能让你在数据管理、Web开发和系统集成等领域具备更强的竞争力。

    MySQL学习笔记.chm

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

    MySQL学习笔记.zip

    学习MySQL需要掌握SELECT语句用于查询数据,INSERT用于插入数据,UPDATE用于更新数据,DELETE用于删除数据,以及CREATE、ALTER、DROP等用于数据库和表结构的管理。 四、数据库与表 在MySQL中,数据库是存储数据的...

    mysql学习笔记.rar

    MySQL是世界上最受欢迎的开源关系型数据库管理系统...通过这份学习笔记,读者将能够系统地学习MySQL,并逐步提升自己的数据库管理技能。对于希望在IT领域尤其是数据库方向发展的人来说,这是一份非常有价值的学习资料。

    MySQL核心技术学习笔记

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

    Mysql学习笔记1

    ### MySQL学习笔记1:深入理解内连接与外连接 #### 一、引言 在数据库管理与查询过程中,连接操作是十分常见且重要的一个环节。MySQL作为一种广泛使用的开源关系型数据库管理...希望本文能够对你学习MySQL有所帮助。

    Mysql学习笔记.pdf

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

    mysql 个人学习笔记

    在开始学习MySQL之前,你需要了解如何在不同的操作系统上安装MySQL服务器,如Windows、Linux或Mac OS。安装完成后,配置文件my.cnf用于设置服务器参数,如端口号、默认字符集等。 2. **SQL基础**: SQL(结构化...

    mysql学习笔记(一).txt

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

    mysql学习笔记.xmind

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

    尚硅谷mysql笔记.zip

    尚硅谷的MySQL笔记可能是为了帮助学习者深入理解和掌握MySQL的相关知识而编写的。这份笔记可能包含了从基础概念到高级特性的全面讲解,包括但不限于SQL语言、数据类型、数据库设计、索引、事务处理、视图、存储过程...

    MySQL学习笔记

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

    尚硅谷MySQL高级_笔记

    尚硅谷MySQL高级的视频学习笔记,由本人整理

    mysql DBA学习笔记

    这份"超经典mysql DBA学习笔记"涵盖了成为一名优秀DBA所需掌握的众多知识点,旨在帮助学习者深入理解MySQL数据库的运维与优化。 一、MySQL概述 MySQL是一种开源、免费的关系型数据库管理系统,广泛应用于互联网应用...

    MySQL学习笔记-JSP操作MySQL

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

    mysql学习笔记

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

    MySQL OCP超详细学习笔记.pdf

    MySQL OCP 超详细学习笔记$pdf MySQL OCP 超详细学习笔记.pdf 是一份详细的 MySQL 学习笔记,旨在帮助 MySQL DBA master 数据库管理的知识和技能。本笔记涵盖了 MySQL 的多个方面,包括 MySQL 的配置、性能优化、...

    MySQL学习笔记666

    mysql学习笔记

Global site tag (gtag.js) - Google Analytics