本文主要内容有:
1.运算符
2.流程控制语句
3.插入、修改、删除表数据
一、运算符
1.算术运算符
符号 | 作用 |
+ - * / | 加减乘除四则运算 |
% | 整除求余 |
DIV | 除法运算,同“/” |
MOD | 求余运算,返回余数,同“%” |
进行除法和求余运算时,x2参数为0时,计算结果为空值。
2.比较运算符
运算符 | 说明 |
=,>,<,>=,<= | 等于,大于,小于,大于等于,小于等于 |
!=或<> | 不等于 |
IS NULL或 IS NOT NULL | 空值或非空值 |
BETWEEN AND | 包含临界值 |
IN或NOT IN | 判断在不在集合里面 |
LIKE或 NOT LIKE | 模式匹配 |
REGEXP | 常规表达式,使用方法:[属性值 正则表达式] |
一些使用举例:
select x is NULL from table; //为空值返回1,不为空返回值0
x1 BETWEEN m AND n//如果x1大于等于m且小于等于n,结果返回1
x1 IN(值1,值2,值3...)//判断是否在一个集合里
x1 LIKE 's1'//查找匹配的字符串
x1 REGEXP '匹配方式'//以指定方式指定字符串开头、结尾,以及包含字符串
复制
REGEXP通常和$, . ,^,一起使用
选择db_0数据库中的tb_0数据表,'^m'判断是否以m开头,'g$'判断是否以g字符结尾,'m'是否包含m
3.逻辑运算符
符号 | 作用 |
&&或AND | 与 |
||或OR | 或 |
!或NOT | 非 |
XOR | 异或 |
4.位运算符
&按位与,|按位或,~按位取反,
^按位异或,<<按位左移,>>按位右移
5.运算符优先级
!>~>^>算术运算符>比较运算符>逻辑运算符
二、流程控制语句
<由于这一部分还没有学明白,只有语法规则,将在后续存储过程学习中指出>
1.IF语句
IF condition THEN
……
[ELSE condition THEN]
……
[ELSE]
……
end if
复制
2.CASE语句
CASE value
WHEN value THEN···;
[WHEN value THEN···;]
[ELSE;]
END CASE;
复制
3.WHILE 循环语句
WHILE condition DO
···
END WHILE;
//调用该存储过程
call example_while(@s)
mysql>select @s//
复制
4.LOOP循环语句
LOOP
···
END LOOP;
//与LEAVEL搭配使用
LEAVEL label;
复制
5.REPEAT循环语句
REPEAT
···
UNNTIL condition
END REPEAT
//搭配使用
ITERATE label;
复制
三、插入数据
1.使用INSERT···VALUES语句插入数据
插入完整数据
DESC db.tb;//查看表结构
USE db;//调用数据库
INSERT INTO tb VALUES(1,'mr','mrsoft','2014-09-05 10:25:20');
//顺序与表结构呼应
复制
插入部分数据记录
USE db;
INSERT INTO tb(属性列1,属性列2)
VALUES('值1','值2');
MySQL会对id自动编号,未指出的值赋予NULL
复制
插入多条记录,在单个的基础上每个元组用逗号隔开。
2.使用INSERT···SET语句插入数据
USE DB;
INSERT INTO tb
SET x1='值',x2='值';
复制
3.插入查询结果
DESC db.tb;
SELECT*FROM tb1;
INSERT INTO db.tb2
(列1,列2)
SELECT 列A,列B FROM tb1;
复制
四、修改数据
UPDATE db.tb SET 修改列='修改值' WHERE 条件列='条件值';
复制
五、删除数据
1.通过DELETE语句删除数据
USE db;
DELETE FROM tb WHERE 条件列名='条件值';
复制
2.通过TRUNCATE TABLE语句删除数据
TRUNCATE[TABLE] 数据表名;
eg:TRUNCATE TABLE db.tb;
复制
3.区别与注意事项
delete语句如果没有where条件,则删除所有记录
truncate table语句会删除表中所有数据,并且无法恢复
使用truncate后,表中的auto_increment计数器被重新设置初始值
参与了索引和视图的表,不能使用truncte table语句进行删除
delete语句每删除一行都会在事务日志中添加一行记录,而truncate语句则是通过释放存储表数据来删除数据的,因此只在事务日志中记录页的释放。
文章转载自小张的栈,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
MySQL数据库当前和历史事务分析
听见风的声音
373次阅读
2025-04-01 08:47:17
墨天轮个人数说知识点合集
JiekeXu
368次阅读
2025-04-01 15:56:03
MySQL 生产实践-Update 二级索引导致的性能问题排查
chengang
345次阅读
2025-03-28 16:28:31
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
283次阅读
2025-04-15 14:48:05
MySQL8.0直方图功能简介
Rock Yan
276次阅读
2025-03-21 15:30:53
MySQL 有没有类似 Oracle 的索引监控功能?
JiekeXu
265次阅读
2025-03-19 23:43:22
云和恩墨杨明翰:安全生产系列之MySQL高危操作
墨天轮编辑部
256次阅读
2025-03-27 16:45:26
openHalo问世,全球首款基于PostgreSQL兼容MySQL协议的国产开源数据库
严少安
243次阅读
2025-04-07 12:14:29
MySQL 9.3 正式 GA,我却大失所望,新特性亮点与隐忧并存?
JiekeXu
216次阅读
2025-04-15 23:49:58
PG vs MySQL 执行计划解读的异同点
进击的CJR
167次阅读
2025-03-21 10:50:08