2021
01-08
01-08
PostgreSQL 字符串拆分与合并案例
我就废话不多说了,大家还是直接看代码吧~withperson_nameas(selectc.id,array_to_string(array_agg(distinctp.c_name),',')asp_namefrombiz_notification_configcjoinbiz_notification_personponp.id=any(string_to_array(c.persons,',')::int[])groupbyc.id),group_nameas(selectc.id,array_to_string(array_agg(distinctg.c_name),',')as...
继续阅读 >
1有时候我们会需要将多条数据根据一些特别的字段做一些合并。比如下面这个查询,正常会查询出3条数据,但是我们会希望根据create_by分成两列显示2这时候需要用到string_agg函数,先通过groupby分组,在进行合并,当然查询结果需要满足groupby的限制;sql语句:selectcreate_by,string_agg(videoname,',')asvideonamesfromw008_video_addr_infowhereidin(4248,538,546)groupbycreate_by查询结果:3复杂一些的应用...
postgreSQL学习笔记欢迎大家指出问题!版本从6.0开始支持SQL解释器安装一路下一步。1.创建数据库//命令行操作createdbdatabase_name;CREATEDATABASEdatabase_name;psql-l//展示所有数据库psqldatabase_name//进入数据库2.删除数据库dropdbdatabase;DROPDATABASEdatabase_name;3.创建表createtable表名(titlevarchar(255),contenttext);//修改表名altertablepo...
Postgresql如何批量修改函数拥有者,默认创建的函数对象的拥有者为当前创建的用户,如果使用postgres超级管理员创建一个test()的函数,拥有者就是postgres用户。下面讲解下如何批量修改拥有者。本文演示的Postgresql版本如下:PostgreSQL9.6.8相关视图要查询Postgresql的函数和函数参数需要使用函数视图和参数视图,分别记录了函数信息和参数列表信息。视图一:information_schema.routines视图routines包含当前数据库中所有的函...
如何查看PostgreSQL默认权限当我们对Postgresql的某个用户授予默认权限时,pg_default_acl表存储要被分配给新创建对象的初始权限。你可能通过查询该表获取默认权限,先了解下官方文档的解释:表50-17.pg_default_acl的列:名称类型引用描述oidoid行标识符(隐藏属性,必须被显式选择才会显示)defaclroleoidpg_authid.oid...
grantselectonalltablesinschemapublictousername;此句是有效的复制语句PG中有schema的概念,以下的语句就是不行网上得来终觉浅,错误比较多,还是要自己试试才行。补充:postgresql关于访问视图需要的权限某个用户访问一个视图,这个用户需要具备这个视图的schema的usage和这个视图本身的select权限,如果视图的基表来自其他schema,可能还需要其他schema的usage权限(根据postgresql改造的redshift发现了此问题),但是这...
t_aj_ajjbxxt_aj_ajfbxxt_xt_dwxx两表关联,删除一张表中数据deletefromdb_lx.t_aj_ajfbxxajfbUSINGdb_lx.t_xt_dwxxdwwheredw.c_bh=ajfb.c_ssdwanddw.c_sfbh='65';只有t_aj_ajfbxx表中数据被删除三表关联,删除一张表中数据deletefromdb_lx.t_aj_ajjbxxajjbUSINGdb_lx.t_aj_ajfbxxajfb,db_lx.t_xt_dwxxdwwhereajjb.c_bh=ajfb.c_ajbhandajfb.c_ssdw=dw.c_bhanddw.c_sfbh='65';只有t_aj_ajjbxx表中数据被删...