
学习MySQL 02.
会话级别设置:
发布日期:2021-05-10 23:24:20
浏览次数:24
分类:精选文章
本文共 2124 字,大约阅读时间需要 7 分钟。
MySQL数据库操作指南
自定义起始值
MySQL数据库支持自增列,允许开发者自定义起始值和步长。自增列通常用于记录唯一的主键值,MySQL默认起始值为1,步长为1。此外,还可以通过设置会话或全局变量,来实现自定义起始值和步长。设置自增列的起始值
可以通过ALTER TABLE
命令来修改表内自增列的起始值。例如: ALTER TABLE t1 AUTO_INCREMENT = 2
设置自增列的步长
对于自增列的步长,可以通过以下方式实现:SET SESSION auto_increment_increment=2; // 设置步长为2 SET SESSION auto_increment_offset=10; // 设置起始值,默认不建议修改
- 全局级别设置:
SET GLOBAL auto_increment_increment=2; // 设置步长为2 SET GLOBAL auto_increment_offset=10; // 设置起始值,默认不建议修改
唯一索引与主键
唯一索引与主键的功能类似,均用于保证数据唯一性。然而,主键不能为null,而唯一索引可以允许为空。唯一索引还能提高查询效率。联合索引可以用于联合唯一约束,避免空值冲突。外键设计
外键关系主要分为一对一、一对多和多对多。对于一对多或多对多关系,可以通过检查约束(CHECK
)来避免误列,但这并非强制约束。如果需要确保一对多关系的唯一性,可以使用联合唯一约束。 MySQL操作指南
以下是MySQL常用操作的语法示例:插入语句
INSERT INTO tb(name, age) VALUES("alex", 18), ("root", 20);
数据复制
INSERT INTO tb2(name, age)SELECT name, age FROM tb;
删除语句
DELETE FROM tb WHERE id > 2 AND name = "alex";
更新语句
UPDATE tb SET name = "alex" WHERE id > 2 AND name = "xx";
查询语句
SELECT * FROM t1; // 查询所有字段SELECT id, name FROM t1; // 仅查询指定字段SELECT id, name AS cname FROM t1 WHERE id > 2 OR name = "xx"; // 别名查询
通配符查询
SELECT * FROM tb1 WHERE name LIKE "%a&%"; // 查询含有指定字符的数据SELECT * FROM tb1 WHERE name LIKE "%a_%"; // 查询以特定字符结尾的数据
分页查询
SELECT * FROM tb1 LIMIT 10; // 偏移0页,默认显示第一10条SELECT * FROM tb1 LIMIT 10, 20; // 偏移10页,显示下20条SELECT * FROM tb1 LIMIT 20 OFFSET 10; // 偏移10条,显示下20条
排序操作
SELECT * FROM tb ORDER BY id DESC; // 按id倒序排列SELECT * FROM tb ORDER BY id ASC; // 按id升序排列SELECT * FROM tb ORDER BY id DESC LIMIT 10; // 按id降序排列显示前10条
分组与聚合
SELECT count(id), part_id FROM userinfo5 GROUP BY part_id; // 按part_id分组并计算id数量SELECT count(id), max(id), part_id FROM userinfo5 GROUP BY part_id HAVING count(id) > 1; // 按条件筛选分组结果
连表查询
SELECT * FROM userinfo5, department5 WHERE userinfo5.part_id = department5.id; // inner join 示例SELECT * FROM userinfo5 LEFT JOIN department5 ON userinfo5.part_id = department5.id; // left join 示例SELECT * FROM userinfo5 RIGHT JOIN department5 ON userinfo5.part_id = department5.id; // right join 示例
排序与连接操作
通过排序和连接操作,可以显著提升查询效率。对于多表连接,建议优先使用INNER JOIN
,并结合LEFT JOIN
或RIGHT JOIN
根据需求选择合适的关联类型。 数据库操作是数据库开发的核心内容,熟练掌握SQL语法和优化技巧,可有效提升数据库性能和开发效率。
发表评论
最新留言
不错!
[***.144.177.141]2025年04月19日 14时49分48秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
编译android源代码(aosp)
2019-03-12
IDEA 找不到 Persistence窗口解决办法
2019-03-12
维基百科之AndroidRoot
2019-03-12
C++ Primer Plus读书笔记:循环读取(错误处理)
2019-03-12
skimage与cv2 安装失败的解决办法
2019-03-12
关于吴恩达的深度学习的一些授课视频里面英文翻译错误的实例展示
2019-03-12
伴随矩阵和逆矩阵的关系证明
2019-03-12
突破Bias-Variance困境
2019-03-12
Form窗体属性
2019-03-12
解决宝塔安装wordpress无法连接到数据库问题
2019-03-12
解决Eclipse加载图片或网页出现404错误
2019-03-12
vue 错误收集
2019-03-12
Java选择排序算法实现
2019-03-12
00010.02最基础客户信息管理软件(意义类的小项目,练习基础,不涉及数据库)
2019-03-12
00013.05 字符串比较
2019-03-12
LeetCode: 138. 复制带随机指针的链表(中等)[DFS, 迭代]
2019-03-12
Effective Java 读书笔记
2019-03-12
SpringBoot使用@Email报错误
2019-03-13
Rabbitmq的内存磁盘监控
2019-03-13