昨天上了mysql第三课,感觉有点小难,不过因为我提前看了一本书-----mysql必知必会,所以都能理解。昨天主要讲了1.函数(1.文本处理函数2.日期时间处理函数3. 聚合函数) 2.分组查询 3.查询语句顺序 4.子查询
1.文本处理函数
left() 返回左边指定长度的字符 SELECT prod_name,LEFT(prod_name,2) FROM products;//返回prod_name左边的两个字符
right() 返回右边指定长度的字符 ,不解释
LTrim() 去掉字符串左边的空格 SELECT prod_name,LTRIM(prod_name) FROM products
RTrim() 去掉字符串右边的空格 不解释
Trim() 去掉字符串两边的空格
Upper() 将字符串转换为大写 lower() 将字符串转换为小写
2.日期时间处理函数
curDate()返回当前日期
curTime()返回当前时间
now()返回当前日期和时间
date()返回日期时间的的日期部分
time()返回日期时间的时间部分
day()返回日期的天数部分
dayofweek()返回一个日期对应星期数
hour()返回时间的小时部分
minute()返回时间的分钟部分
month()返回日期的月份部分
second()返回时间的秒部分
year()返回日期的年份部分
datediff()计算两个日期之差 SELECT datediff('1991-3-11','2001-2-8') 后边的时间减前边的时间,返回天数
addDate()添加一个日期(天数) SELECT ADDDATE('1985-02-23',10000) 返回1985-02-23加10000后的日期
比如 '2001-9-13 13:20:45' 其中2001-9-13是日期 13:20:45是时间
3.聚合函数
MAX:获取某列的最大值
MIN:获取某列的最小值
AVG:获取某列的平均值
COUNT:获取某列的行数
SUM:获取某列的和
没什么可说的,很简单,其中聚合函数都忽略null行
4.分组查询
获取每个供应商提供的产品数量 SELECT vend_id,COUNT(*) FROM products GROUP BY vend_id
获取提供产品数量大于2的供应商
SELECT vend_id,COUNT(*) FROM products GROUP BY vend_id HAVING COUNT(*) > 2
HAVING 用于GROUP BY的过滤
WHERE用于分组前的过滤
5.查询语句顺序
顺序为
SELECT
FROM
WHERE
GROUP BY
HAVING
ORDER BY
LIMIT
6.子查询(子查询指的是嵌套在查询中的查询)
就是把多个普通查询集合在一起,互相带入
获取订购商品编号为TNT2的客户名
SELECT cust_name FROM customers WHERE cust_id IN (SELECT cust_id FROM orders WHERE order_num IN(SELECT order_num FROM orderitems WHERE prod_id = "TNT2"));
子查询不仅可以用于WHERE子句中,而且可以用于SELECT子句中
获取每个客户下的订单数量:
SELECT cust_id,cust_name,(SELECT COUNT(*) FROM orders WHERE orders.cust_id = customers.cust_id) FROM customers
子查询实质就是带入,类似于数学上的推导,知道一个条件,如何求答案。
分享到:
相关推荐
本课程“MySQL第三课”将深入探讨这个强大的数据库系统的关键概念和技术,旨在帮助学习者掌握数据库管理的核心技能。 在这一课中,我们将重点讨论以下几个关键知识点: 1. **SQL语言基础**:SQL(Structured Query...
第三课MySQL授权认证.pdf 第九课MySQL字符集.pdf 第二十一课MySQL常见错误-converted.pdf 第二十课MySQL索引和调优.pdf 第二课MySQL入门介绍.pdf 第五课MySQL常用函数介绍.pdf 第八课InnoDB内核.pdf 第六课...
│ 8_MySQL第三范式设计讲解.mp4 │ 9_MySQL数据库设计工具.mp4 │ ├─新版MySQL DBA综合实战班 第06天 │ 1_课堂作业讲解.mp4 │ 2_InnoDB内核之事务和多版本控制.mp4 │ 3_InnoDB底层文件存储和体系结构.mp4 │ ...
├第三天视频 01.MySQL高级今日内容.mp4 02.MySQL高级应用优化.avi 03.MySQL高级查询缓存概述及流程.avi 04.MySQL高级查询缓存配置参数.avi 05.MySQL高级查询缓存开启查询缓存.avi 06.MySQL高级查询缓存SELECT选项....
第3课、MySQL部署规范&体系结构-1222.avi 第4课、MySQL体系结构-1227.avi 第5课、MySQL索引-0103.avi 第6课、MySQL索引2-0104.avi 第7课、MySQL索引3-0110.avi 第8课、MySQL事务-0119.avi 第9课、MySQL锁-0216.avi ...
pczygx PC资源共享 MYSQL 高级注入 教程 渗透教程 第一课 MYSQL基础教学I ...第三课 MYSQL基础教学III 第四课 手工注入-联合查询篇 第五课 手工注入-MYSQL5.0暴库 第六课 手工注入-MYSQL注入高级技巧
第三课、帐号注册_转.mp4。第四课、验证登录cookie正确_转.mp4。第五课、文件信息的保存_转.mp4。第六课、文件读出_转.mp4。第七课、文件的审核_转.mp4。第八课、文件的举报_转.mp4。第九课、文件下载_转.mp4。第十...
第3课 查询优化技术理论与MySQL实践(一)------子查询的优化(一) 第4课 查询优化技术理论与MySQL实践(二)------子查询的优化(二) 从理论看,子查询包括的内容和范围,建立清晰的概念 从实践看,MySQL的子查询...
第三天 Squid代理缓存服务器 第四天 MySQL主从数据库和分区技术 第五天 MySQL性能优化 第六天 Mrtg网络监控和Shell邮件报警 第七天 Cacti网络监控,邮件报警和压力测试 第八天 Sphinx全文索引 第九天 Mongodb数据库...
第3章:MySQL硬件优化与监控 第4章:MySQL基准测试 第5章:MySQL Schema设计与索引 第6章:SQL优化与高级特性 第7章:MySQL备份 第8章:MySQL备份与恢复深入 第9章:MySQL的复制 第10章:MySQL高可用及可扩展架构 第...
第3课、MySQL日志-目录结构-重要命令-用户基本了解-1208.wmv 第4课、理解MySQL用户及Schema-1212.avi 第5课、数据类型-1214.avi 第6课、MySQL字符集-1219.avi 第7课、mysqldump备份及业界使用MySQL的常见结构-1221....
第一节课课堂总结 数据库是什么? 数据库系统(Database System),是由数据库及其管理软件组成的系统。 数据库就是储存数据的地方,传统意义上不包括文件系 数据库是由2部分组成 1.db数据库本身—-我们看不见 2.数据库...
第三章 数据定义:本章主要讲解如何使用SQL语句创建、修改和删除数据库对象,如表、视图、存储过程和函数。学习者会掌握CREATE, ALTER, DROP等关键字的用法,以及如何定义字段属性,如数据类型、约束条件等。 第四...
《MySQL数据库入门》是针对初学者的一本指南,旨在帮助读者快速掌握MySQL的基本概念和操作。这本教材的配套资源包含了一系列辅助学习材料,如教学PPT、教学大纲、教学设计、课后习题及答案,以及源代码,旨在提供全...
mysql的增删改查以及事务、授权、第三范式等内容的讲解
【MySQL第一课】 在信息化社会,数据扮演着至关重要的角色。数据是信息的基础,它可以表现为符号、文字、数字、语音、图像以及视频等多种形式。数据的处理和管理是现代信息系统的核心,而数据库则是管理和存储数据...
设计良好的数据库应该遵循第一范式(1NF)、第二范式(2NF)和第三范式(3NF),以确保数据的一致性和完整性。 2. 表的创建:使用`CREATE TABLE`语句可以定义表结构,包括字段名、数据类型、约束等。例如: ```sql...
30-增加MySQL数据库第三个实例实战讲解.avi 31-MySQL数据库多实例的其他故障问题说明.avi 第三部:MySQL应用管理及进阶实战操作(29节) 01-MySQL启动与关闭深入知识及原理.avi 02-登录MySQL知识深入讲解.avi 03-...
第三部分:开发技术介绍 该论文主要使用 Spring MVC 框架和 MySQL 数据库来开发到课率监控软件。Spring MVC 是一个基于 Java 的 Web 应用程序框架,提供了强大的模块化和松耦合的特点,而 MySQL 是一个关系型数据库...