MySQL数据类型与操作:日期时间函数,表字段操作

需积分: 1 0 下载量 138 浏览量 更新于2024-08-04 收藏 8KB TXT 举报
本文档是关于Python与MySQL交互的学习笔记,涵盖了数据类型、日期时间函数、表字段操作、SQL查询等内容。 在Day02的回顾中,主要涉及了以下知识点: 1. 数据类型: - 数值类型:包括整型(int)和浮点型(float)等。 - 字符类型:如字符串(str),用于存储文本信息。 - 枚举类型: - 单选:使用enum创建,例如`enum('值1')`。 - 多选:使用set创建,如`set('值1', '值2')`。示例中的`"MySQL,Python,Study"`是一个set的例子。 - 日期时间类型: - date:仅存储日期,如'2022-04-01'。 - time:仅存储时间,如'12:00:00'。 - datetime:包含日期和时间,如'2022-04-01 12:00:00',未指定默认为NULL。 - timestamp:包含日期和时间,且不指定时默认为系统当前时间。 2. 日期时间函数: - NOW():返回当前日期和时间。 - CURDATE():返回当前日期。 - CURTIME():返回当前时间。 - YEAR(字段名):提取日期字段中的年份。 - DATE(字段名):提取日期字段中的日期部分。 - TIME(字段名):提取日期字段中的时间部分。 - 日期时间运算:可以进行日期时间与整数相加减的操作,如`字段名 + INTERVAL n DAY`,表示在日期上增加或减少n天。 3. 表字段操作: - 添加(add):使用`ALTER TABLE`语句添加新字段,如`ALTER TABLE 表名 ADD 字段名 数据类型 FIRST|AFTER 另一字段名`。 - 修改(modify):更新已存在的字段类型,如`ALTER TABLE 表名 MODIFY 字段名 新数据类型`。 - 删除(drop):移除表中的字段,如`ALTER TABLE 表名 DROP 字段名`。 - 重命名(rename):改变字段名称,如`ALTER TABLE 表名 RENAME COLUMN 旧字段名 TO 新字段名`。 - 更改(change):更改字段名称和数据类型,如`ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型`。 4. 数据操作: - 删除(DELETE):从表中删除满足条件的行,如`DELETE FROM 表名 WHERE 条件`。 - 更新(UPDATE):修改满足条件的行,如`UPDATE 表名 SET 字段1=值1, 字段2=值2 WHERE 条件`。 5. 条件表达式: - 逻辑运算符:如`AND`、`OR`,以及短路逻辑`&&`、`||`。 - 比较运算符:`=`, `!=`, `<`, `>`, `<=`, `>=`,以及对日期时间的比较。 - 范围检查:`BETWEEN 值1 AND 值2`,`IN (值1, 值2, ...)` 和 `NOT IN (值1, 值2, ...)`。 - NULL检查:`IS NULL` 和 `IS NOT NULL`。 - 正则表达式:使用`LIKE`进行模式匹配,`_`代表任意单个字符,`%`代表任意数量的字符。 6. SQL查询: - 排序(order by):按字段升序(ASC)或降序(DESC)排序。 - 分页(limit):限制查询结果的数量,如`LIMIT n`取前n条,`LIMIT m, n`取第m到第(m+n-1)条。 - 分组(group by):对查询结果进行分组,常与聚合函数配合使用。 - 聚合函数:如`AVG()`计算平均值,`SUM()`求和,`MAX()`取最大值,`MIN()`取最小值,`COUNT(字段)`统计非NULL值的数量。 在Day03的学习中,主要探讨了更复杂的SQL查询技巧,如嵌套查询、分组后的过滤(HAVING子句)和多表联接操作。这些技巧在处理复杂的数据分析和报表生成时非常有用。