sql >> データベース >  >> RDS >> PostgreSQL

Postgresql:日付形式とローカル言語の出力

    最初の質問について:スペースが追加されるのは、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を決定するためのパターン 月のパターン。利用可能なパターンのリストを確認したい場合は、上記のリンクをたどることができます。



    1. Doctrine2はid列のデフォルトにシーケンスを設定しません(postgres)

    2. postgresqlの結果をbash変数に格納します

    3. MySqlの階層データ

    4. PHP:MySQLにクエリを実行する最速の方法は何ですか? PDOは痛々しいほど遅いので