![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
postgresql实战
都是postgresql实战中的痛点问题
xuxu1116
中国科学院大学 硕博连读 主要研究方向多模态算法 aigc生成技术,也会分享一下工程问题,因为一个合格的算法工程就是要算法和工程两手抓
展开
-
Postgresql10数据之设置SRID
-- 创建几何对象的空间参考ID,更新成0 update t_noisemap set geometry =ST_SetSRID(geometry, 0)-- 查询几何对象的空间参考ID select st_srid(geometry) from t_noisemap-- 获取几何对象的空间几何描述select ST_Astext(geometry) from t_noisemap where id=2...原创 2020-11-26 14:20:11 · 3131 阅读 · 0 评论 -
Postgresql10数据库之获取json类型列中的数据
平常开始时,一些数据存储成字符串,不便于时常筛选以及查询。也不利于前端加载至系统中。所以设计数据将该列直接存储成json。这样在查询时,可以不用单独再次整理数据为json。也方便下次后台筛选数据后台更快速的查找到。select ((data::json) -> 'keyName') as leq from noisemap_cal.t_mid_map where ‘设置判断条件用于筛选一条数据’...原创 2020-11-26 14:02:58 · 764 阅读 · 0 评论 -
Postgresql10之重置序列
有时候我们在进行开发的时候,常常需要对数据库中的数据进行更改。有时候会存在将数据库中表格的数据进行全部清空。但数据表的序列或者自增的id却没有重置。以下是自己的总结的对序列进行重置的方法。作用1:重置表中自增的主键idTRUNCATE tablename RESTART IDENTITY;其中tablename 就是你自己要修改的表,同时你要想这么修改必须将所有外键全部删除,否则不成...原创 2019-07-25 15:53:47 · 5176 阅读 · 4 评论 -
Postgresql10之四舍五入保留小数
在创建数据时,尝尝会遇见需要将一些数据进行,小数的四舍五入操作。譬如,保留小数点后两位。方法:使用数据库中的round函数round(cast((188.4-random()*10) as numeric), 2)...原创 2019-07-25 15:44:53 · 6856 阅读 · 1 评论 -
Postgresql10数据库之删除数据
2种方法都只删数据,保留表结构方法一 ,适用数据量较小的情况方法二,适合删除大量数据,速度快若该表有外键,要用级联方式删所有关联的数据。原创 2019-03-22 17:34:52 · 4178 阅读 · 1 评论 -
Postgresql10数据库之查看数据库版本
1.查看服务器端版本1.1 查看详细信息select version();1.2 查看版本信息show server_version;1.2 查看数字版本信息包括小版号SHOW server_version_num;或SELECT current_setting('server_version_num');2.注意事项-- 返回类型为textSELECT curren...原创 2019-03-22 17:24:03 · 3141 阅读 · 1 评论 -
Postgresql10数据库之更改数据库的名称
创建数据库时,很可能需要对数据库的名称进行重新命名。重命名的方式有2种方式一使用sql语句进行重新命名-- 将数据库的名称由database2改成database1UPDATE pg_database SET datname = 'database1' WHERE datname = 'database2';方式二使用navicat premium 12进行更改...原创 2019-03-25 16:24:59 · 8547 阅读 · 2 评论 -
Postgresql10数据库之创建数据库
很多时候,我们都需要进行数据库的创建。例如:CREATE DATABASE "database" WITH OWNER = postgres TEMPLATE = postgis_24_sample ENCODING = 'UTF8' LC_COLLATE = 'Chinese (Simplified)_People''s Republic of Ch...原创 2019-03-25 16:21:15 · 2014 阅读 · 1 评论 -
postgresql10数据库之模式
模式的概念官方文档中对于模式的解释:一个postgresql数据库中包含一个或更多命名的数据库。用户和用户组被整个集簇共享,但没有其他数据在数据库之间共享。任何给定客户端连接只能访问在连接中指定的数据库中的数据。换一种通俗易懂的方式,就是说:模式(schema)是对数据库(database)的逻辑分割。在数据库创建的同时,就默认为其创建了一个public模式。 数据库是被模式来分割的,一...原创 2019-03-21 17:29:58 · 1944 阅读 · 1 评论 -
Postgresql10数据库之添加主键
给一张已经存在的数据表添加主键约束ALTER TABLE public.tablename -- 添加主键的表名 ADD CONSTRAINT tablename_pkey -- 主键的名称 PRIMARY KEY (id -- 主键的列名 ); ...原创 2019-03-21 16:50:40 · 22761 阅读 · 1 评论 -
Postgresql10数据库之3395转4326
将数据库中存储的geometry数据从3395转化成4326例子如下-- 转化坐标系UPDATE public.tablename SET geometry= st_transform(st_geomfromtext((st_astext(geometry)),3395),4326);...原创 2019-03-21 16:45:50 · 1038 阅读 · 0 评论 -
Postgresql10数据库之计算多边形凸壳
计算多边形凸壳例子如下 select st_astext(st_transform( st_geomfromtext( st_astext( st_buffer( st_astext( st_transform( s...原创 2019-03-21 16:43:00 · 574 阅读 · 0 评论 -
Postgresql10数据库之判断两个geometry关系
多面MULTIPOLYGON与多面MULTIPOLYGON判断是否相交,判断关系的函数,即用判断A是否被B包含ST_Within(geometry A, geometry B)多线与多面判断关系,即用判断两个几何对象是否相交ST_Intersects(geometry, geometry) 判断两个点是否相等,即用判断两个几何对象是否相等(比如LINESTRING(0 0, 2 ...原创 2019-03-21 16:38:43 · 3734 阅读 · 0 评论 -
Postgresql10数据库之文本转化换成geometry
将text转化成geometry对象使用函数ST_GeomFromText例如:select ST_GeomFromText('point(1 1)')//0101000000000000000000F03F000000000000F03F原创 2019-03-21 16:31:29 · 5839 阅读 · 2 评论