最初の質問について:スペースが追加されるのは、month
およびDay
パターンは次のとおりです:
https://www.postgresql.org/docs/9.6/static /functions-formatting.html
したがって、このスペースを削除したい場合は、次のようなものを試すことができます:
select trim(to_char(localtimestamp(0), 'Day'))||to_char(localtimestamp(0), ' DD ')||trim(to_char(localtimestamp(0), 'month'))||to_char(localtimestamp(0), ' YYYY')
-
イタリア語については、別の方法もあるかもしれませんが、これもうまくいくはずです。イタリアの月と日の名前をハードコーディングし、case
を使用してそれらを「翻訳」することができます 式、次のようなもの:
select
case
when trim(to_char(tstamp, 'Day')) = 'Monday' then 'Monday_in_italian'
when trim(to_char(tstamp, 'Day')) = 'Tuesday' then 'Tuesday_in_italian'
when trim(to_char(tstamp, 'Day')) = 'Wednesday' then 'Wednesday_in_italian'
-- another days here
end||
to_char(tstamp, ' DD ')||
case
when trim(to_char(tstamp, 'month')) = 'january' then 'January_in_italian'
when trim(to_char(tstamp, 'month')) = 'february' then 'February_in_italian'
-- another months here
end||
to_char(tstamp, ' YYYY')
as tstamp
from your_table
これをいつでも正しく機能させたい場合は、7日すべてと12か月すべての名前を大文字と小文字を区別する式に含める必要があることに注意してください。
またはさらに良いことに、case
ステートメントでは、D
を使用できます 日とMM
を決定するためのパターン 月のパターン。利用可能なパターンのリストを確認したい場合は、上記のリンクをたどることができます。