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

PostgreSQLのlc_monetaryを設定します

    ロケールはオペレーティングシステムによって異なります。利用可能なロケールを確認してください

    select * 
    from pg_collation
    where collname ~ any(array['DE', 'FR', 'GR', 'IE'])
    
      collname  | collnamespace | collowner | collencoding | collcollate | collctype  
    ------------+---------------+-----------+--------------+-------------+------------
     en_IE      |            11 |        10 |            6 | en_IE.utf8  | en_IE.utf8
     en_IE.utf8 |            11 |        10 |            6 | en_IE.utf8  | en_IE.utf8
    (2 rows)
    

    私のUbuntuはドイツ語、フランス語、ギリシャ語を話しませんが、アイルランド語は英語を話し、ユーロで支払います。

    set lc_monetary to "en_IE.utf8";
    select 10::money;
    
     money  
    --------
     €10.00
    (1 row)
    

    Windowsでは、コンプがドイツ語を話す可能性があります:

    set lc_monetary to "de-DE";
    

    残念ながら、pg_collation これは表示されません。




    1. Oracleのストアドプロシージャに一重引用符で囲まれたvarcharを渡す方法

    2. スキーマパターン検索からデータクラスへの関連付け

    3. novalidateオプションで検証できません

    4. レコードが存在するかどうかを判断する最速の方法