Java教程

数据库02

本文主要是介绍数据库02,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

SQL是关系代数的一种实现方式,它让我们不用考虑数据集的特征来自行编写合适的代码。
例子:
在这里插入图片描述
在这里插入图片描述

聚合函数只能出现在select部分中
在这里插入图片描述在count中,目的只是为了计算tuple的个数,因此也可以写为:

在这里插入图片描述

在这里插入图片描述
可以使用多个聚合函数:所有登录名包含了 的学生数和学生的平均gpa
在这里插入图片描述COUNT SUM AVG 都支持去重 DISTINCT
在这个例子用其实不太恰当,因为没有不同的 学生会有相同的登录名。
在这里插入图片描述

GROUP BY
select中出现的只能是聚合函数值,或者是在group by中出现的字段
在这里插入图片描述group by将这些记录tuple分成几个子集,并针对每个子集进行聚合计算。
在这里插入图片描述
HAVING:根据group by形成的每个子集的特征做过滤

在这里插入图片描述

%:0个或多个字符
_:匹配一个任意字符
在这里插入图片描述

SQL定义了一些字符串运算:
substring(name,0,5)
UPPER
在这里插入图片描述
连接字符串 ||
有些实现中也使用+或concat()

返回当前日期+时间:
SELECT NOW()

抽取日期中的天字段
SELECT EXRACT(DAY FROM DATE(‘2018-08-29’)

计算当前日期是今年的第几天:
UINX_TIMESTAMP 返回当前日期距离开始时间的总秒数

SELECT ROUND(
UINX_TIMESTAMP(DATE(‘2018-08-29’)) - UNIX_TIMESTAMP(DATE(‘2018-01-01’)) / 606024
, 0 )

或直接用函数 DATEDIFF

将查询结果插入另一张表中:
被插入的表必须存在.
输入的查询结果的列数和类型必须和所插入的表的列数和类型一致

这篇关于数据库02的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!