广告
返回顶部
首页 > 资讯 > 数据库 >使用PostgreSQL注意事项
  • 129
分享到

使用PostgreSQL注意事项

使用PostgreSQL注意事项 2016-07-18 16:07:12 129人浏览 绘本
摘要

一、大小写特别敏感 大写字段需要用“”引号(pg字段名使用“”,Mysql字段名使用``)  ******表名以及字段名如果是小写但是为关键字,比如name,则也需使用""; 二、分页 limit ${limit} offset

使用PostgreSQL注意事项

一、大小写特别敏感

大写字段需要用“”引号(pg字段名使用“”,Mysql字段名使用``)

 ******表名以及字段名如果是小写但是为关键字,比如name,则也需使用"";

二、分页

limit ${limit} offset ${start}

 

三、判断条件等号前后字段类型需要一致

类型转换相关函数

pg使用文档:https://www.runoob.com/postgresql/postgresql-functions.html

函数

返回类型

描述

实例

to_char(timestamp, text)

text

将时间戳转换为字符串

to_char(current_timestamp, "HH12:MI:SS")

to_char(interval, text)

text

将时间间隔转换为字符串

to_char(interval "15h 2m 12s", "HH24:MI:SS")

to_char(int, text)

text

整型转换为字符串

to_char(125, "999")

to_char(double precision, text)

text

双精度转换为字符串

to_char(125.8::real, "999D9")

to_char(numeric, text)

text

数字转换为字符串

to_char(-125.8, "999D99S")

to_date(text, text)

date

字符串转换为日期

to_date("05 Dec 2000", "DD Mon YYYY")

to_number(text, text)

numeric

转换字符串为数字

to_number("12,454.8-", "99G999D9S")

to_timestamp(text, text)

timestamp

转换为指定的时间格式 time zone convert string to time stamp

to_timestamp("05 Dec 2000", "DD Mon YYYY")

to_timestamp(double precision)

timestamp

把UNIX纪元转换成时间戳

to_timestamp(1284352323)

四、日期格式转换(格式跟oracle类似)

eg:

时间转字符串:to_char(now(),"yyyy-mm-dd hh24:mi:ss");

占位符

描述

HH

一天的小时数(01-12)

HH12

一天的小时数(01-12)

HH24

一天的小时数(00-23)

MI

分钟(00-59)

SS

秒(00-59)

MS

毫秒(000-999)

US

微秒(000000-999999)

AM

正午标识(大写)

Y,YYY

带逗号的年(4和更多位)

YYYY

年(4和更多位)

YYY

年的后三位

YY

年的后两位

Y

年的最后一位

MONTH

全长大写月份名(空白填充为9字符)

Month

全长混合大小写月份名(空白填充为9字符)

month

全长小写月份名(空白填充为9字符)

MON

大写缩写月份名(3字符)

Mon

缩写混合大小写月份名(3字符)

mon

小写缩写月份名(3字符)

MM

月份号(01-12)

DAY

全长大写日期名(空白填充为9字符)

Day

全长混合大小写日期名(空白填充为9字符)

day

全长小写日期名(空白填充为9字符)

DY

缩写大写日期名(3字符)

Dy

缩写混合大小写日期名(3字符)dy缩写小写日期名(3字符)

DDD

一年里的日子(001-366)

DD

一个月里的日子(01-31)

D

一周里的日子(1-7;周日是1)

W

一个月里的周数(1-5)(第一周从该月第一天开始)

WW

一年里的周数(1-53)(第一周从该年的第一天开始)

 

转时间格式

to_date( #{req_tm},"yyyy-mm-dd")

 

select now()::varchar(19);

 

select cast( "2018-03-22 06:15:16"as timestamp)

函数

返回类型

描述

例子

to_char(timestamp, text)

text

把时间戳转换成字串

to_char(current_timestamp, "HH12:MI:SS")

to_char(interval, text)

text

把时间间隔转为字串

to_char(interval "15h 2m 12s", "HH24:MI:SS")

to_char(int, text)

text

把整数转换成字串

to_char(125, "999")

to_char(double precision, text)

text

把实数/双精度数转换成字串

to_char(125.8::real, "999D9")

to_char(numeric, text)

text

把numeric转换成字串

to_char(-125.8, "999D99S")

to_date(text, text)

date

把字串转换成日期

to_date("05 Dec 2000", "DD Mon YYYY")

to_timestamp(text, text)

timestamp

把字串转换成时间戳

to_timestamp("05 Dec 2000", "DD Mon YYYY")

to_timestamp(double)

timestamp

把UNIX纪元转换成时间戳

to_timestamp(200120400)

to_number(text, text)

numeric

把字串转换成numeric

to_number("12,454.8-", "99G999D9S")

五、实现mysql中的GROUP_CONCAT()方法

使用:array_to_string(GROUP_CONCAT(DISTINCT cgu.group_id),",")

创建自定义聚合函数

CREATE AGGREGATE group_concat(anyelement)

(

sfunc = array_append, -- 每行的操作函数,将本行append到数组

stype = anyarray, -- 聚集后返回数组类型

initcond = "{}" -- 初始化空数组

);

 

六、null替换

coalesce(pmodule_id,"")

 

七、模糊查询

SELECT * FROM public."user"

WHERE UPPER(username) LIKE UPPER("%" || #{username} || "%");

 

SELECT * FROM public."user"

WHERE CONCAT(username) LIKE CONCAT("%", #{username}, "%");

 

SELECT * FROM public."user"

WHERE username LIKE "%" || #{username} || "%";

 

八、实现MySQL中的主键自增功能

为字段添加自增功能时需要创建序列

 

--创建序列字段自增

CREATE SEQUENCE imp_item_status_map_seq --序列名

START WITH 200 --起始值

INCREMENT BY 1 --增量

NO MINVALUE

NO MAXVALUE

CACHE 1;

--删除序列

DROP SEQUENCE imp_item_status_map_seq cascade;

--将表中字段关联序列

--mapping_id 需要关联表中的字段

alter table imp_item_status_map alter column mapping_id set default nextval("imp_item_status_map_seq");

 

九、

--创建类似UUID()函数方法

create or replace function random_string(integer)

returns text as

$body$

select array_to_string(array(select substring("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" FROM (ceil(random()*62))::int FOR 1) FROM generate_series(1, $1)), "");

$body$

language sql volatile;

 

您可能感兴趣的文档:

--结束END--

本文标题: 使用PostgreSQL注意事项

本文链接: https://www.lsjlt.com/news/5260.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用PostgreSQL注意事项
    一、大小写特别敏感 大写字段需要用“”引号(pg字段名使用“”,MySQL字段名使用``)  ******表名以及字段名如果是小写但是为关键字,比如name,则也需使用""; 二、分页 limit ${limit} offset ...
    99+
    2016-07-18
    使用PostgreSQL注意事项
  • PostgreSQL时间日期的语法及注意事项
    目录sql时间用法获取当前日期的函数&&获取当前时间的函数获取当前日期的函数获取当前时间的函数获取当前日期加时间的函数函数: current_timestamp函数:...
    99+
    2023-01-13
    postgresql 时间日期 postgresql数据库
  • Oracle vs PostgreSQL,研发注意事项(5)- 字符类型
    本节介绍了Oracle和PG在字符类型上面的部分不同点,具体包括数据存储方式、实际占用的空间大小以及查询返回数据的处理方式等。 一、不同点 数据存储 Oracle 常规定义的长度,...
    99+
    2022-10-18
  • Oracle vs PostgreSQL,研发注意事项(7)- 类型转换
    本节以数值型相互转换以及数值型和字符型的转换为例大体介绍了Oracle和PostgreSQL类型转换上的部分异同,可据此思路推广到其他类型。 一、数值类型转换 下面以数值类型为例子...
    99+
    2022-10-18
  • PostgreSql生产级别数据库安装要注意事项
    目录一、安装包下载二、必要的准备工作1、安装必要的编译环境2、创建postgre用户3、开放防火墙端口4.修改操作系统打开最大文件句柄数5、创建必要的目录三、编译并安装四、配置环境变量五、数据库及参数初始化六、启动数据库...
    99+
    2022-08-26
  • Springboot中@RequestBody注解使用的注意事项
    这篇文章将为大家详细讲解有关Springboot中@RequestBody注解使用的注意事项,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。@RequestBody注解踩坑@RequestBody json...
    99+
    2023-06-29
  • 使用javaweb要注意哪些事项
    1. 确保正确配置和部署Java开发环境,包括安装JDK、配置环境变量等。2. 选择适合的Java Web框架,如Spring MV...
    99+
    2023-09-21
    javaweb
  • python executemany的使用及注意事项
    使用executemany对数据进行批量插入的话,要注意一下事项: #coding:utf8 conn = MySQLdb.connect(host = “localhost”, user = “roo...
    99+
    2022-06-04
    注意事项 python executemany
  • ajaxStart()使用注意事项有哪些
    本篇内容主要讲解“ajaxStart()使用注意事项有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ajaxStart()使用注意事项有哪些”吧!   ....
    99+
    2022-10-19
  • ajaxSuccess使用注意事项是什么
    本文小编为大家详细介绍“ajaxSuccess使用注意事项是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“ajaxSuccess使用注意事项是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,...
    99+
    2022-10-19
  • 使用CDN的一些注意事项
    使用CDN的注意事项有: 选择CDN的时候,为了保障网站的安全性,应该选择安全可靠的提供商。不要为搜索引擎设置指定IP,不然CDN发挥不了作用,会使CDN加速系统就无法给出最佳的加速线路。做域名CNAME解析时,地址后面要加点,不然CDN网...
    99+
    2022-10-20
  • PyGraphviz安装使用及注意事项
    目录1. 工具说明2. linux安装3. windows安装3.1 安装 python3.2 安装 Graphviz3.3 安装 PyGraphviz3.4 PyGraphviz ...
    99+
    2023-02-22
    PyGraphviz 安装使用 PyGraphviz 安装 python PyGraphviz PyGraphviz 使用
  • 使用averageifs要注意哪些事项
    使用averageifs函数时,需要注意以下几点事项:1. 函数语法:averageifs函数的语法为averageifs(aver...
    99+
    2023-09-07
    averageifs
  • 使用jpa要注意哪些事项
    使用JPA时需要注意以下事项:1. 实体类的注解:使用@Entity注解标记实体类,使用@Id标记实体类中的主键字段,使用@Colu...
    99+
    2023-09-12
    jpa
  • 使用MongoDB要注意哪些事项
    使用MongoDB时需要注意以下事项: 数据建模:MongoDB是一种文档数据库,数据以文档形式存储,因此需要合理设计文档模式。...
    99+
    2023-10-25
    mongodb
  • 关于Arrays.sort()使用的注意事项
    目录Arrays.sort()使用注意事项Arrays.sort()平时经常用到:有两种方式Arrays.sort()降序排列问题Arrays.sort()使用注意事项 Java中的...
    99+
    2022-11-13
  • Oracle vs PostgreSQL,研发注意事项(9)- PostgreSQL数据类型转换规则#1
    PostgreSQL与Oracl...
    99+
    2022-10-18
  • PostgreSQL的日志文件参数及注意事项有哪些
    这篇文章主要介绍“PostgreSQL的日志文件参数及注意事项有哪些”,在日常操作中,相信很多人在PostgreSQL的日志文件参数及注意事项有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方...
    99+
    2022-10-18
  • Java项目Guava包 HashMultimap使用及注意事项
    目录1. 数据模型介绍2. 简单使用介绍2.1 容器创建2.2 添加元素2.3 移除元素2.4 替换元素2.5 获取元素及遍历2.6 输出所有的key2.7 输出所有的value3....
    99+
    2022-11-13
  • 在SpringBoot中使用lombok的注意事项
    目录Lombok需求Lombok的使用开发工具无论是idea还是eclipse都必须要安装插件在项目中依赖Lombok如下简化javabean证明lombok在编译以后会自动生成Lo...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作