当前位置: 首页 > news >正文

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;

http://www.jsqmd.com/news/79746/

相关文章:

  • NCMconverter:解锁网易云音乐格式限制的终极解决方案
  • 探索科研新助力:理性审视宏智树 AI 科研工具的期刊论文辅助价值
  • 【附源码】新能源充电桩管理系统(源码+数据库+毕业论文+答辩ppt)java开发springboot+vue框架javaweb,可做计算机毕业设计或课程设计
  • 当 AI 写论文沦为 “双刃剑”:降重 + 压低 AIGC 率双管齐下,让论文兼具原创性与安全性|虎贲等考 AI 实测工具流与操作逻辑全图解
  • 知网AIGC检测原理是什么?知网AI率检测严格吗?
  • 微软重磅开源VibeVoice实时TTS模型:0.5B参数开启语音交互新纪元
  • 学术写作新纪元:解锁宏智树 AI 降重 + 降 AIGC 率双重功能的隐藏秘籍
  • 知网AIGC检测原理是什么?如何去除知网AI痕迹?
  • 千亿参数本地智能体新标杆:GLM-4.5-Air-FP8如何应对性能与效率的两难困境
  • 学校要求用知网查AI率,如何降低知网的ai痕迹?
  • C++起始之路——类和对象(下)
  • 论文降重与AIGC痕迹消除:当学术写作遇见宏智树AI学术
  • 液态智核V2震撼发布:重新定义边缘设备生成式AI体验
  • 斯坦福新框架AgentFlow突破AI决策瓶颈:模块化设计与Flow-GRPO训练法引领智能代理新范式
  • 百度ERNIE 4.5大模型技术突破:多模态融合与高效部署的创新实践
  • AI元人文构想:对《“认知转向”视域下道德价值的体验主义解析》的范式审视
  • JAVA —— 04
  • Kakao开源轻量级多模态模型Kanana-V:重新定义小参数视觉语言模型性能边界
  • 蚂蚁集团开源万亿参数推理大模型Ring-1T-preview,刷新多项全球榜单纪录
  • Qwen3-235B-A22B-Instruct-2507震撼登场:256K超长上下文开启AI全场景应用新纪元
  • 14、Linux Mint 多媒体与用户管理全攻略
  • 15、深入了解Linux Mint用户管理与权限设置
  • 16、Linux用户管理、权限设置与网络连接指南
  • DeepSeek-Coder-V2-Instruct-0724强势登榜Aider LLM排行第二,技术突破引领代码大模型新高度
  • 18、Linux系统文件共享与安全防护指南
  • 字节跳动发布UI-TARS模型:重新定义GUI自动化交互,实现82.8%视觉感知准确率
  • 6.React记忆化处理
  • 20、强化Linux系统安全与高级管理技巧
  • 21、Linux系统高级管理技巧全解析
  • 大模型突破:DeepSeek-OCR掀起视觉记忆革命,重新定义AI信息处理范式