一、MySQL SELECT语句
SELECT语句是控制查看哪些列和行数据,具体如下:
SELECT
column_1, column_2, ...
FROM
table_1
[INNER | LEFT |RIGHT] JOIN table_2 ON conditions
WHERE
conditions
GROUP BY column_1
HAVING group_conditions
ORDER BY column_1 (DESC : 降序)
LIMIT LEN offset X;
SELECT
语句由以下列表中所述的几个子句组成:
SELECT
之后是逗号分隔列或星号(*
)的列表,表示要返回所有列。FROM
指定要查询数据的表或视图。JOIN
根据某些连接条件从其他表中获取数据。WHERE
过滤结果集中的行。GROUP BY
将一组行组合成小分组,并对每个小分组应用聚合函数。HAVING
过滤器基于GROUP BY
子句定义的小分组。ORDER BY
指定用于排序的列的列表。LIMIT
限制返回偏移X地址后LEN行的数据。
通配符:
WHERE 列名 LIKE ‘xxx%’ //%相当于正则表达式中的*。
WHERE 列名 LIKE ‘xxx_’ //_ 只能匹配一个字符。
正则表达式:
WHERE 列名 REGEXP ‘.xxx_’ // “.” 只能匹配一个字符。
元字符 | 说明 |
* | 0个或多个匹配 |
+ | 1个或多个匹配 |
? | 0个或1个匹配 |
{n} | 制定数目匹配 |
{n,} | 不少于指定数目的匹配 |
{n,m} | 匹配数目的范围 |
= | 等于 |
<> | 不等于 |
!= | 不等于 |
< | 小于 |
<= | 小于等于 |
> | 大于 |
>= | 大于等于 |
BETWEEN X AND Y | 在X和Y之间 |
二、 MySQL INSERT INTO语句
(1)MySQL INSERT
语句允许您将一行或多行插入到表中。下面说明了INSERT
语句的语法:
INSERT INTO table(column1,column2...)
VALUES (value1,value2,...);
(2)插入多行数据,方法如下:
INSERT INTO table(column1,column2...)
VALUES (value1,value2,...),
(value1,value2,...),
...;
(3)具有SELECT字句的插入语句
INSERT INTO table_1
SELECT c1, c2, FROM table_2;
三、 MySQL UPDATE语句
UPDATE
语句来更新表中的现有数据。也可以使用UPDATE
语句来更改表中单个行,一组行或所有行的列值。语法如下:
UPDATE [LOW_PRIORITY] [IGNORE] table_name
SET
column_name1 = expr1,
column_name2 = expr2,
...
WHERE
condition;
- WHERE子句中的条件指定要更新的行。
WHERE
子句是可选的。 如果省略WHERE
子句,则UPDATE
语句将更新表中的所有行。
MySQL在UPDATE
语句中支持两个修饰符。
LOW_PRIORITY
修饰符指示UPDATE
语句延迟更新,直到没有从表中读取数据的连接。LOW_PRIORITY
对仅使用表级锁定的存储引擎(例如MyISAM,MERGE,MEMORY)生效。- 即使发生错误,IGNORE修饰符也可以使UPDATE语句继续更新行。导致错误(如重复键冲突)的行不会更新。
四、 MySQL DELETE语句
MySQL DELETE
语法如下:
DELETE FROM table_name
WHERE condition;
在上面查询语句中 -
- 首先,指定删除数据的表(
table_name
)。 - 其次,使用条件来指定要在
WHERE
子句中删除的行记录。如果行匹配条件,这些行记录将被删除。 - WHERE条件可参考SELECT使用方法。
五、 MySQL 基础命令
(1)启动MYSQ : Service myswl start
(2)关闭MYSQ :Service mysql stop
(3)查看运行状态 : Service mysql status
(4)设置新密码 : Mysql password =password(“新密码”)
(5)MYSQL查询配置文件:mysql --help | grep my.cnf
(6)MYSQL查看缓存池参数:show variables like 'innodb_buffer_pool_size'; //或innode_version
(7)MYSQL设置参数:set global innodb_old_blocks_pct=20;
(8)检查自动提交开关:show VARIABLES like 'autocommit'; //ON:开启,OFF:关闭
(9)检查表的状态:show table status (like ‘表名’)
(10)查看所有包含innodb的变量:show variables like 'innodb_%';
注:SQL执行顺序如下
图1 逻辑查询处理顺序
基本指令参考: