Day43 - 2018-05-17

PostgreSQL
想对通过聚合创建的查询中的元素执行 WHERE 条件,就需要使用 HAVING。HAVING总是出现在GROUP BY之后,它可以对聚合的数据过滤,而WHERE不能

SELECT s.name, COUNT(a.id)
FROM accounts a
JOIN sales_reps s
ON a.sales_rep_id = s.id
GROUP BY 1
HAVING COUNT(a.id) > 5
ORDER BY 2 DESC

DATE_TRUNC 使你能够将日期截取到日期时间列的特定部分。常见的截取依据包括日期月份年份这是一篇 MODE 发表的精彩博文,介绍了关于此函数的强大功能。

DATE_PART 可以用来获取日期的特定部分,但是注意获取 monthdow (day of week)意味着无法让年份按顺序排列。而是按照特定的部分分组,无论它们属于哪个年份。

要了解其他日期函数,请参阅这篇文档

CASE 条件语句
  • CASE 语句始终位于 SELECT 条件中。

  • CASE 必须包含以下几个部分:WHEN、THEN 和 END。ELSE 是可选组成部分,用来包含不符合上述任一 CASE 条件的情况。

  • 你可以在 WHEN 和 THEN 之间使用任何条件运算符编写任何条件语句(例如 WHERE),包括使用 AND 和 OR 连接多个条件语句。

  • 你可以再次包含多个 WHEN 语句以及 ELSE 语句,以便处理任何未处理的条件。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • NULL函数 NULL 是一种数据类型,表示 SQL 中没有数据。它们经常在聚合函数中被忽略了,在下个部分学习使用...
    夏威夷的芒果阅读 3,919评论 0 1
  • 2017.08.30 说到刘备,可以说是屡战屡败,屡败屡战。 同时,刘备也是非常善于打败仗的。 面对必败无疑的仗,...
    摹喵居士阅读 1,571评论 0 0
  • 第一章 (一)初遇 “小茜,小茜!你...
    九尾一叫我小九阅读 3,034评论 0 1
  • 睡不着,来总结下! 10月份,状态说真的,不是很好!10月中旬去杭州找艾力老师,得到最大好处是,我知道我有些方向错...
    不动摇阅读 1,499评论 0 0

友情链接更多精彩内容