sql >> Database teknologi >  >> RDS >> PostgreSQL

Postgresql:datoformat og lokalt sprogoutput

Om første spørgsmål:yderligere mellemrum skyldes month og Day mønstre er:

https://www.postgresql.org/docs/9.6/static /functions-formatting.html

Så hvis du vil fjerne disse mellemrum, kan du prøve noget som dette:

 select trim(to_char(localtimestamp(0), 'Day'))||to_char(localtimestamp(0), ' DD ')||trim(to_char(localtimestamp(0), 'month'))||to_char(localtimestamp(0), ' YYYY')

--

Om italiensk sprog, kan der også være andre måder, men det burde også virke. Du kan hårdkodede italienske måneds- og dagnavne og "oversætte" dem med case udtryk, noget som dette:

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

Bemærk, at du skal sætte alle 7-dages og alle 12-måneders navne i kasusudtryk, hvis du vil arbejde korrekt til enhver tid.

Eller endnu bedre, i case udsagn, kan du bruge D mønster for bestemme dag og MM mønster for måned. Hvis du vil se en liste over tilgængelige mønstre, kan du følge linket, jeg har skrevet ovenfor.



  1. Opgradering af din database til PostgreSQL version 10 - hvad du bør vide

  2. Er der nogen forskel på at gemme samme værdi i forskellige heltalstyper?

  3. Dvale @OrderBy med refereret klasse

  4. Sådan administreres server-side processer ved hjælp af MySQL