MySQL语句常用大全(增删改查)

MySQL

MySQL 是最流行的关系型数据库管理系统

什么是数据库?

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,

每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据。

我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。

所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

RDBMS即关系数据库管理系统(Relational Database Management System)的特点:

  • 1.数据以表格的形式出现
  • 2.每行为各种记录名称
  • 3.每列为记录名称所对应的数据域
  • 4.许多的行和列组成一张表单
  • 5.若干的表单组成database

MySQL 创建数据库

CREATE DATABASE name;

MySQL 创建表

CREATE TABLE table_name;

MySQL 删除表

DROP TABLE table_name;

MySQL 增加一条数据

INSERT INTO table_name (column1,column2,....columnN) values (value1,value2.....valueN);

如果数据是字符型,必须使用单引号或者双引号,如:"value"。

MySQL 查询数据

SELECT column_name1,column_name2 FROM table_name [where];

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

MySQL WHERE 语句

SELECT column_name1,column_name2... FROM table_name1,table_name2..

WHERE contidion1 [AND][OR] condition2;

  • 你可以使用 AND 或者 OR 指定一个或多个条件。
  • WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令。

MySQL UPDATE 语句

UPDATE table_name SET coumn1=value,coumn2=value [WHERE];

MySQL DELETE 语句

DELETE FROM table_name [where];

MySQL LIKE 语句

SELECT column_name1,column_name2...

FROM table_name

WHERE column_name LIKE contidion1 [AND][OR] column_name2='dfaa';

'%a' 以a结尾的数据
'a%'  以a开头的数据
'%a%'  含有a的数据
'_a_'  三位且中间字母是a的
'_a'   两位且结尾字母是a的
'a_'   两位且开头字母是a的

SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *。

如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的。

MySQL UNION 操作符

UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据

SELECT column_name1,column_name2...

FROM table_name

[WHERE] 

UNION [ALL | DISTINCT]

SELECT column_name1,column_name2...

FROM table_name

[WHERE] 

DISTINCT: 可选,删除结果集中重复的数据。默认情况下 UNION 操作符已经删除了重复数据。

ALL: 可选,返回所有结果集,包含重复数据。

MySQL 排序

SELECT column_name1,column_name2...

FROM table_name1,table_name2

[WHERE] 

OREDER BY column_name1  [,column_name2] [ASC[DESC]];

你可以设定多个字段来排序。

你可以使用 ASC 或 DESC 关键字来设置查询结果是按升序或降序排列。 默认情况下,它是按升序排列。

GROUP BY 语句

GROUP BY 语句根据一个或多个列对结果集进行分组。

在分组的列上我们可以使用 COUNT, SUM, AVG,等函数。

SELECT column_name,function(column_name)

FROM table_name

[WHERE] 

GROUP BY column_name [ WITH ROLLUP];

WITH ROLLUP 可以实现在分组统计数据基础上再进行相同的统计(SUM,AVG,COUNT…)。

1、group by 语句用法有一个注意点,在 select 语句中,所查询的字段除了聚合函数(SUM ,AVG,COUNT...)以外 必须只能是分组的字段

举例:SELECT id,name,count(*) FROM employee_tb1 GROUP BY name;

运行该语句程序会报错,因为 id 字段并不包含在 GROUP BY 分组中.


改为如下:SELECT id,name ,count(*)FROM employee_tb1 GROUP BY id,name;

则程序可以正常运行。

2、分组后的条件使用 HAVING 来限定,WHERE 是对原始数据进行条件限制。几个关键字的使用顺序为 where 、group by 、having、order by ,例如:

SELECT name ,sum(*)  FROM employee_tb1 WHERE id<>1 GROUP BY name  HAVING sum(*)>5 ORDER BY sum(*) DESC;

MySQL 表连接

INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。

LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。

RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

MySQL ALTER命令

当需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令。

删除,添加或修改表字段:

删除:ALTER TABLE testalter_tbl DROP i;(删除一列i)

添加:ALTER TABLE testalter_tbl ADD i INT;(添加一列int型的i列)

修改: ALTER TABLE testalter_tbl MODIFY c CHAR(10);(把c列的类型改为char)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值