摘要:
题目描述 从商品价格变更明细表(sku_price_modify_detail),得到最近一次价格的涨幅情况,并按照涨幅升序排序。 结果如下: sku_id<string>(商品id)price_change<decimal(16,2)>(涨幅) 8 -200.00 9 -100.00 2 -70. 阅读全文
摘要:
题目描述 从登录明细表(user_login_detail)中查询在相同时刻,多地登陆(ip_address不同)的用户 题目需求 从登录明细表(user_login_detail)中查询在相同时刻,多地登陆(ip_address不同)的用户 期望结果如下: user_id<string>(用户id 阅读全文
摘要:
子查询(Subquery)是指嵌套在其他SELECT、INSERT、UPDATE以及DELETE语句中的查询语句。子查询的作用与多表连接查询有点类似,也是为了从多个关联的表中返回或者过滤数据。例如,我们想要知道哪些员工的月薪大于平均月薪,可以通过子查询实现: SELECT e.first_name, 阅读全文
摘要:
日期时间函数 PostgreSQL提供了以下日期和时间运算的算术运算符。 PostgreSQL还提供了大量用于日期和时间数据处理的函数。 计算时间间隔 age(timestamp, timestamp)函数用于计算两个时间点之间的间隔,age(timestamp)函数用于计算当前日期的凌晨12点到该 阅读全文
摘要:
函数(function)是一些预定义好的代码模块,可以将输入进行计算和处理,最终输出一个结果值。PostgreSQL函数可以分为两类:标量函数(scalar function)和聚合函数(aggregation function)。标量函数针对每个输入都会返回相应的结果,聚合函数针对一组输入汇总出一 阅读全文
摘要:
CASE表达式的作用就是为SQL语句增加类似于IF-THEN-ELSE的逻辑处理功能,可以根据不同的条件返回不同的结果。PostgreSQL支持两种形式的条件表达式:简单CASE表达式和搜索CASE表达式。另外,为了方便空值处理,PostgreSQL还提供了两个缩写形式的CASE表达式(函数):NU 阅读全文
摘要:
在关系型数据库中,通常将不同的实体和它们之间的联系存储到多个表中。比如员工的个人信息存储在employees表中,而与部门相关的信息存储在departments表中,同时employees表中存在一个外键字段(department_id),引用了departments表的主键(department_ 阅读全文
摘要:
PostgreSQL除了支持基本的GROUP BY分组操作之外,还支持3种高级的分组选项:GROUPING SETS、ROLLUP以及CUBE。 GROUPING SETS选项 GROUPING SETS是GROUP BY的扩展选项,用于指定自定义的分组集。举例来说,以下是一个销售数据表: CREA 阅读全文
摘要:
聚合函数 聚合函数(aggregate function)针对一组数据行进行运算,并且返回单个结果。PostgreSQL支持以下常见的聚合函数: AVG-计算一组值的平均值。 COUNT-统计一组值的数量。 MAX-计算一组值的最大值。 MIN-计算一组值的最小值。 SUM-计算一组值的和值。 ST 阅读全文
摘要:
查询语句的结果可能包含成百上千行数据,但是前端显示时也许只需要其中的小部分,例如TOP-N排行榜;或者为了便于查看,每次只显示一定数量的结果,例如分页功能。为了处理这类应用,SQL提供了标准的FETCH和OFFSET子句。另外,PostgreSQL还实现了扩展的LIMIT语法。 Top-N查询 这类 阅读全文