首页 > 数据库 >Postgresql

Postgresql

时间:2023-03-09 18:35:58浏览次数:51  
标签:Postgresql col2 number col1 date order row

引入

商业角度:使用Mysql需要向Oracle付费或者将程序开源,postGreSql允许开发人员做任何事情,包括在开源或者闭源产品中商用

 

语法

分页  limit  条数   offet 偏移量       (mysql 中 limit offset,number)

ilike  支持忽略带小写模糊匹配

 

 

聚合函数

STRING_AGG ( expression, separator [order_by_clause] ) 用于连接字符串列表并在字符串之间放置分隔符。
  • expression是可以解析为字符串的任何有效表达式。
  • separator 是串联字符串的分隔符。

 

条件函数

case when then end

case column when value then returnValue end   eg: case class_type when 'tax' then code end

 

coalesce 

COALESCE(exp1,exp2,expn…) 从头开始判断,返回非空值

SELECT date_in, (date_in + '1 D') "date_in+ 1" FROM et  WHERE date_in  BETWEEN '2022-04-15 21:37:00' AND  COALESCE(NULL, date_in + interval '1 D')  // 或者 '1' DAY

 

 

 分组操作函数

分组排序 row_number() over( [partition by col1] order by col2[desc])

row_number():为返回的记录定义各行编号

partition by col1:根据col1进行分组;

order by col2:根据col2进行排序。

原始数据:

 

 

select *, row_number() over(partition by course order by score desc) from student;

 

 参考:https://www.jianshu.com/p/955aff947788

 

标签:Postgresql,col2,number,col1,date,order,row
From: https://www.cnblogs.com/deity-night/p/17199545.html

相关文章