news 2026/8/29 4:14:49

python基础(mysql)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python基础(mysql)

一、sql基础语句

1.select语句

SELECT column1, column2, ... FROM table_name WHERE condition;

其中,SELECT关键字用于指定要查询的列,可以使用*代表所有列;FROM关键字用于指定要查询的表;WHERE关键字用于指定查询的条件。

select * from student where sex=’男’;

2.insert语句

INSERT INTO table_name (column1, column2, column3, ...)

VALUES (value1, value2, value3, ...);

其中,table_name是要插入数据的表名,column1、column2等是表中的列名,value1、value2等是要插入的值。

3.update语句

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE some_column = some_value;

其中,table_name是要更新数据的表名,column1、column2等是要修改的列名,value1、value2等是要修改的值,WHERE子句是用于指定要更新的行的条件。

4.delete语句

DELETE
FROM table_name
WHERE some_column = some_value;

其中,table_name是要删除数据的表名,WHERE子句是用于指定要删除的行的条件。

注意:如果不指定条件相当于删除表中所有数据

二、sql基本查询

1.where子句

WHERE子句是结构化查询语言(SQL)中用于筛选数据的关键字。通过WHERE子句,您可以指定一个或多个条件来限制从数据库中检索的数据行。以下是WHERE子句的使用方式:

SELECT * FROM table_name
WHERE some_column = some_value;

1)操作符:

WHERE子句可以使用以下比较运算符:

=(等于)

<(小于)

>(大于)

<=(小于或等于)

>=(大于或等于)

<>或!=(不等于)

还可以使用逻辑运算符(AND、OR和NOT)来组合多个条件。例如:

SELECT * FROM students WHERE sex = ‘男’ and age > 23;

2)模糊搜索

-- 多字符匹配
SELECT * FROM students WHERE clazz like 'xx%'
-- 单字符匹配
SELECT * FROM students WHERE stu_name LIKE '张_';

-- 多关键词匹配:找姓名含“张”或“李”或“王”的学生
SELECT * FROM students WHERE name RLIKE '张|李|王'
-- 范围匹配:找姓名含“张”且后面跟1-2个字符的学生(如“张三”“张三丰”)
SELECT * FROM students WHERE name RLIKE '张.{1,2}';

3)in

返回选项中的内容

select * from students where clazz in ('xx','xx','xx');

4)BETWEEN AND

返回年龄在22到24的学生

select * from students where age BETWEEN 22 AND 24;

2.order by子句

ORDER BY子句用于对查询结果按照一个或多个列进行排序。它接受一个或多个列名或表达式作为参数,并可指定每个列的排序方式(ASC:升序,DESC:降序)。语法如下:

SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC | DESC], column2 [ASC | DESC], ...

3.group by子句

GROUP BY子句用于将查询结果按照一个或多个列进行分组,并对每个组进行聚合计算(如COUNT、SUM、AVG等)。语法如下:

SELECT column1, column2, ..., avg(column_name)
FROM table_name
GROUP BY column1, column2, ...

-- 嵌套where
select * from
(SELECT column1, column2, ..., aggregate_function(column_name) f
FROM table_name
GROUP BY column1, column2, ...) as t1
where t1.f > xxx;

4.having子句

HAVING子句用于对分组后的结果进行过滤,只返回符合条件的分组。它接受一个或多个聚合函数作为参数,并可指定每个函数的过滤条件。语法如下:

SELECT column1, column2, ..., aggregate_function(column_name)
FROM table_name
GROUP BY column1, column2, ...
HAVING condition;

5.limit子句

LIMIT用于限制查询结果集的行数,其中,number是你想要返回的行数。其语法如下:

SELECT column1, column2, ...
FROM table_name
LIMIT number;

-- 多行查询 从number1起 limit number2个
SELECT column1, column2, ...
FROM table_name
LIMIT number1,number2;

三、数据连接

1.外连接 内连接

1)内连接 join | inner join

SELECT s.*, sc.subject_id, su.subject_name
FROM (
students s
JOIN
scores sc
JOIN
subjects su
ON s.stu_id = sc.stu_id and sc.subject_id = su.subject_id
);

2).外连接 left join / right join / full join

# 在score末行添加一个假数据
# 2000 1 100 期末
SELECT *
FROM(
students as s
RIGHT JOIN
scores as sc
ON s.stu_id = sc.stu_id
);

2.union 操作

先拼接,再去重(删除重复行)

-- 合并“成绩≥90”和“成绩≤60”的学生信息(UNION 自动去重)
SELECT s.stu_id, s.stu_name, sc.score, su.subject_name
FROM students s
JOIN scores sc ON s.stu_id = sc.stu_id
JOIN subjects su ON sc.subject_id = su.subject_id
WHERE sc.score >= 90
UNION
SELECT s.stu_id, s.stu_name, sc.score, su.subject_name
FROM students s
JOIN scores sc ON s.stu_id = sc.stu_id
JOIN subjects su ON sc.subject_id = su.subject_id
WHERE sc.score <= 60
ORDER BY score DESC;

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/28 15:10:05

知网AIGC查重率100%?6个技巧快速把AI率降低5%!

知网AIGC率过高是当前很多学生和研究者在论文写作中遇到的普遍问题。别慌&#xff0c;只要掌握正确的方法&#xff0c;完全可以将AI生成痕迹有效降低&#xff0c;顺利通过检测。 一、知网AIGC检测原理是什么&#xff1f; 知网等平台通过以下方式判断内容是否由AI生成&#xf…

作者头像 李华
网站建设 2026/8/28 5:24:31

6.React记忆化处理

使用Hook进行记忆化处理 在React中&#xff0c;每次渲染时函数组件都会被调用&#xff0c;这意味着频繁的计算和函数创建可能会对性能产生负面影响。为了优化性能并防止不必要的重新计算&#xff0c;React提供了3种钩子: useMemo()、useCallback()和useRef()。这些钩子分别允许…

作者头像 李华
网站建设 2026/8/29 3:00:58

14、Linux Mint 多媒体与用户管理全攻略

Linux Mint 多媒体与用户管理全攻略 1. 音乐处理 1.1 音频抓取设置 在 Linux Mint 中进行音频抓取时,需要对相关参数进行配置: - 比特率(Bitrate):将滑块滑至最右侧,设置为 320Kbps。 - OGG Vorbis(有损压缩):禁用。 - FLAC(无损压缩):禁用。 配置完成后,点…

作者头像 李华
网站建设 2026/8/28 3:36:12

Elasticsearch 的倒排索引原理

&#x1f575;️‍♀️ Elasticsearch 的核心&#xff1a;倒排索引原理 Elasticsearch 是基于 Apache Lucene 库构建的&#xff0c;而倒排索引正是 Lucene 的基石。它彻底颠覆了传统数据库按行存储和查找的模式&#xff0c;实现了基于内容的快速定位。 1. 什么是倒排索引&#…

作者头像 李华