迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 数据库 > PostgreSQL >

在 PostgreSQL 中将字符串转换为日期 DD/MM/YYYY

作者:迹忆客 最近更新:2023/03/20 浏览次数:

强制转换是将一种数据类型转换为另一种数据类型的过程。在 PostgreSQL 中,我们不能为日期列指定格式,但我们可以在检索数据时指定我们想要的日期格式。

当不直接在数据库上工作时,我们还可以在应用程序的逻辑中指定我们想要的格式。本教程展示了如何使用与创建数据时不同的格式来检索日期。

在 PostgreSQL 中将字符串转换为日期 DD/MM/YYYY

使用以下命令登录 PostgreSQL 服务器。

david@david-HP-ProBook-6470b:~$ psql -U postgres
Password for user postgres:

输入用户 postgres 的密码,然后按键盘上的 Enter 按钮。

psql (14.2 (Ubuntu 14.2-1.pgdg18.04+1))
Type "help" for help.

postgres=#

创建一个名为 date_db 的数据库,其中将包含具有日期列的实体。将以下 SQL 命令复制并粘贴到你的终端上,然后按键盘上的 Enter 按钮。

postgres=# create database date_db;
CREATE DATABASE

连接到 date_db 数据库以确保在我们创建的数据库上执行查询。使用以下命令连接到 date_db 数据库。

postgres=# \c date_db;
You are now connected to database "date_db" as user "postgres".

创建一个名为 image 的表,其中包含字段 idwidthheightcreated_at。字段 idwidthheight 是类型 integer,而 created_at 是类型 date

date_db=# create table image(id SERIAL NOT NULL, width integer, height integer, created_at date, PRIMARY KEY(id));
CREATE TABLE

将图像实例的记录插入到 image 表中。将以下 SQL 命令复制并粘贴到你的终端上,然后按键盘上的 Enter 按钮。

请注意,在创建列 created_at 期间未指定日期格式。

date_db=# insert into image(width, height, created_at) values(200,400,'2022-03-29');
INSERT 0 1

我们在向 image 表中插入一条记录时使用了 YYYY-MM-DD 格式。

在 PostgreSQL 中执行查询时使用 to_char 格式化日期

to_char 是一个 PostgreSQL 格式化函数。该函数可以重载不同的数据类型以返回,例如 textdate

将以下 SQL 命令复制并粘贴到你的终端上,然后按键盘上的 Enter 按钮。

date_db=# select to_char("created_at", 'DD/MM/YYYY') from image;
  to_char
------------
 29/03/2022
(1 row)

to_char 函数接受两个参数,一个包含日期的列和日期格式模式,用于在 select 查询期间格式化日期。

请注意,我们使用格式 DD/MM/YYYY 从数据库中检索我们的数据,并使用格式 YYYY-MM-DD 将我们的数据插入数据库。

另一种更改显示格式的方法是使用 DateStyle,但不建议这样做,因为它会影响 PostgreSQL 数据库中日期的解析方式。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 PSQL 中运行 SQL 文件

发布时间:2023/03/20 浏览次数:178 分类:数据库

本文解释了如何直接从终端/命令行或 psql shell 运行 SQL 文件。为此,你需要指定主机名、端口、用户名和数据库名称。

在 PostgreSQL 中使用循环

发布时间:2023/03/20 浏览次数:124 分类:PostgreSQL

在 PL/SQL 中,你可能需要在 Postgres 中使用循环。我们可以使用 FOR 和 WHILE 语句来创建循环。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便