mysql语法整理

这篇博客详细整理了MySQL的常用语法,包括创建和删除数据库、选择数据库、定义变量类型、创建和删除数据表、插入和查询数据、更新和删除数据、排序、分组统计、多表连接、NULL值处理、正则表达式、事务处理、ALTER命令以及索引和临时表的使用。还提到了如何查询特定位置的数据行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Mysql 语法整理

创建数据库

create database XXX;

删除数据库

drop database XXX;

选择数据库
use XXX;

变量类型
大致分为三大类:数值、日期/时间、字符串

*注意DECIMAL类型,DECIMAL(m,d)代表总共有m位,小数有d位

CHAR(n)和VARCHAR(n)里的n代表最多存储的字符个数

创建数据表:

CREATE TABLE table_name (
column_name1 column_type1 (修饰符,NOT NULL, PRIMARY KEY, AUTO_INCREMENT), 
column_name2 column_type2,
...);

删除数据表

DROP TABLE table_name;

插入数据

INSERT INTO table_name ( field1, field2,...fieldN ) VALUES (value1, value2,...valueN );

filed 是列名,可以不按顺序列出,但是相应值要根据你给定的列名给出

查询数据

SELECT column_name1, column_name2
FROM table_name1, table_name2
WHERE XXX
LIMIT N // 限制返回的记录条数
OFFSET M // 指定开始查询的数据偏移量

WHERE语句
操作符:=, <> !=, >, <, >=, <=
AND 、 OR 、

file1 LIKE XXX

LIKE中 % 可以匹配任意字符(0个或多个)

更新数据UPDATE

UPDATE table_name 
SET filed1 =value1, file2 = value2
WHERE XXX

删除数据表中的数据

DELETE FROM table_name
WHERE XXXX

合并 UNION

SELECT expression1, expression2, ... expression_n
FROM tables1
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, ... expression_n
FROM tables2
[WHERE conditions];

ALL: 保留重复数据
DISTINCT:删除重复的,加不加一样

排序

ORDER BY filed1 [ASC|DESC ]

GROUP BY

SELECT column_name, function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

GROUP BY 对表先按 指定的列进行划分,然后对每个表进行操作函数,出现在 group by后面的列明,必须出现在select语句中

后面加 WITH ROLLUP 可以对分组后统计的数据,再用相同的函数进行统计

COALESCE: 如果指定的列值为NULL,则替换为后面的值

SELECT coalesce(name, '总数'), SUM(singin) as singin_count 
FROM  employee_tbl 
GROUP BY name WITH ROLLUP;

多表连接
INNER JOIN (内连接):获取两个表中字段匹配关系的记录(一旦没有匹配,则这行数据就删除)
INNER_JOIN

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

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

NULL值处理
IS NULL, IS NOT NULL, <=>(两个值都相等,或者都为NULL返回true)

正则表达式

SELECT name 
FROM person_tbl 
WHERE name REGEXP '^st';

事务

BEGIN | START TRANSACTION

SAVEPOINT identifier

ROLLBACK TO [identifier]

COMMIT

ALTER命令,修改数据表名,数据表字段

ALTER TABLE testalter_tbl  DROP filed1;
ALTER TABLE testalter_tbl ADD filed1 INT;

还有 MODIFY,后面可以加 FIRST 或者 AFTER filed_name 修饰

索引

CREATE INDEX indexName ON table_name (column_name)
ALTER table tableName ADD INDEX indexName(columnName)

临时表

CREATE TEMPORARY TABLE SalesSummary

查询第N条数据

LIMIT N-1, N

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值