
PostgreSql
文章平均质量分 51
小老虎Love
这个作者很懒,什么都没留下…
展开
-
PostgreSQL-PL/pgSQL控制结构
PL/pgSQL的控制结构是最重要及最有用的一部分了,在实际工作场景都离不开业务处理逻辑,在写PL/pgSQL时,利用控制结构来操作数据。PL/pgSQL支持的控制结构与其他语言几乎差不多,比如:条件、循环、异常等,下面就分别介绍控制结构的使用。1、条件对于条件控制结构,支持IF与CASE两种,IF语句有如下三种写法:if ... then ... end ifif ... then ... else ... end if if ... then ... elsif ... then ... el原创 2022-03-04 23:04:11 · 3203 阅读 · 0 评论 -
PostgreSQL的PL/pgSQL块结构
使用过Oracle的语句块的都熟悉,在不用创建存储过程或函数就可以执行PLSQL数据库脚本,这样做通常可以用来做一些复杂业务数据初始化的功能。那么在PostgreSQL中也有相应的功能,称为PL/pgSQL,具体语法如下:[ <<label>> ][ DECLARE declarations ]BEGIN statementsEND [ label ];语句块由两部分组成:声明部分与主体部分,声明部分是可选的,主体部分是必须的,在主体部分最后的END使用原创 2022-03-02 23:49:37 · 2117 阅读 · 0 评论 -
PostgreSql处理Null与空字符串
在使用 PostgreSql时,实际场景中会出现某个字段为空或空字符串,就取另外一个字段或给默认值,在Oracle数据库中用函数NVL就行实现,那么在PostgreSql可以使用COALESCE函数,与Oracle的NVL一样接收两个参数。区别在于NVL函数的第一个参数对NULL与空字符串,都识别为空,而COALESCE只识别NULL。比如下面数据的order_code字段是NULL,cus_name字段是空字符串:使用函数COALESCE设置NULL与空字符串的默认值,看下对空字符串是否生效。se原创 2022-02-25 22:19:22 · 19960 阅读 · 4 评论 -
PostgreSQL高级特性-WITH查询
1、WITH查询WITH查询是PostgreSQL的高级特性之一,这一特性通常被称为CTE(Common Table Expressions),WITH查询在复杂的查询语句中定义辅助语句(可以理解成查询语句中的临时表),这一特性常用于如下两种场景:将多个子查询类似的写到通用WITH查询中递归查询(树查询)下面通过简单的例子分别对这两种场景的使用。2、复杂查询准备一张测试表及数据create table t_order( id serial primary key, cus_name v原创 2022-01-24 23:46:34 · 2218 阅读 · 0 评论 -
PostgreSQL窗口函数
1、什么是窗口函数窗口函数在和当前行相关的一组表行上执行计算。 这相当于一个可以由聚合函数完成的计算类型。但不同于常规的聚合函数, 使用的窗口函数不会导致行被分组到一个单一的输出行;行保留其独立的身份。 在后台,窗口函数能够访问的不止查询结果的当前行。可以访问与当前记录相关的多行记录;不会使多行聚集成一行, 与聚集函数的区别;2、窗口函数语法window_func() OVER(PARTITION BY [字段] ORDER BY [字段])窗口函数跟随一个OVER子句,OVER子句决定究原创 2021-05-22 17:01:46 · 1130 阅读 · 0 评论 -
PostgreSQL条件表达式
条件表达式在日常工作中很多场景都会用到,比如某个字段为空,取另外一个字段;某个值大于多少,取什么字段,小于多少取什么字段等等。那么下面来简单的学习下PostgreSQL有那些条件表达式。1、CASE CASE表达式是一种通用的条件表达式,类似于编程语言中的if else语句。具体语法如下:CASE WHEN condition THEN result [WHEN ...] [ELSE result]ENDCASE子句可以用于任何表达式可以存在的地方。condition是原创 2021-05-22 12:50:46 · 1353 阅读 · 0 评论