postgresql - 根据请求更改 PostgreSQL 日期语言

标签 postgresql locale postgresql-9.4

我是 PostgreSQL 的新手,我正在尝试更改日期函数结果的区域设置,以获得 to_char(my_date, 'Month') 的结果用另一种语言。

这是我的一些设置:

$> show lc_time;

en_US.UTF-8

我在文档中发现可以在数据库初始化时更改语言环境:

initdb --locale=fr_FR

但这并不是我要找的。

在 MySQL 中,我以前是这样做的:

SET lc_time_names = 'fr_FR';

但不幸的是,我找不到使用 PostgreSQL 的方法。有吗?

最佳答案

您可以使用特殊的 TM 格式(翻译模式)获取月份名称的本地化版本:

to_char(my_date, 'TMMonth')

您还可以使用 TMD 将此应用于工作日的名称。两个版本都将使用服务器的区域设置显示名称,除非 lc_time 运行时参数具有特定设置。也可以为当前 session 更改该设置:

SET lc_time = 'fr_FR';

如果您想在同一 session 中恢复为默认设置,请使用:

SET lc_time TO DEFAULT;

关于postgresql - 根据请求更改 PostgreSQL 日期语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33009076/

相关文章:

java - 使用 OpenJPA 和 postgresql 简单创建数据库

postgresql - 如何在 PostgreSQL 中将字节数组编码为 base32

c++ - 正确使用 boost 区域设置生成器

php - 获取 PHP 语言区域设置日期 - 2022

ruby-on-rails - 按 JSON 数组中的匹配数查询和排序

database - 外部表可以与本地表同名吗?

json - WHERE BETWEEN 子句中的 PostgreSQL jsonb 值

node.js - 使用 postgres 在 sequelize 中按嵌套对象值查找

postgresql - 无法\复制到具有默认 clock_timestamp 的 postgresql 表中

java - 使用 doc4j 创建的 PDF 无法正确呈现语言环境文本