Sök…


Kasta en tidsstämpel eller intervall till en sträng

Du kan konvertera en timestamp eller ett interval till en sträng med to_char() :

SELECT to_char('2016-08-12 16:40:32'::timestamp, 'DD Mon YYYY HH:MI:SSPM');

Detta uttalande kommer att producera strängen "12 aug 2016 04:40:32 PM". Formateringssträngen kan ändras på många olika sätt; hela listan med mallmönster hittar du här .

Observera att du också kan infoga vanlig text i formateringssträngen och du kan använda mallmönstren i valfri ordning:

SELECT to_char('2016-08-12 16:40:32'::timestamp, 
               '"Today is "FMDay", the "DDth" day of the month of "FMMonth" of "YYYY');

Detta kommer att producera strängen "Idag är lördag, den 12: e dagen i augusti 2016". Du bör dock tänka på att alla mallmönster - till och med de enkla bokstäverna som "jag", "D", "W" konverteras, såvida inte den vanliga texten är i dubbla citat. Som säkerhetsåtgärd bör du lägga all vanlig text i dubbla citat, som gjort ovan.

Du kan lokalisera strängen till ditt språk du väljer (dag och månad namn) med hjälp av modifieraren TM (översättningsläge). Detta alternativ använder lokaliseringsinställningen för servern som kör PostgreSQL eller klienten som ansluter till den.

SELECT to_char('2016-08-12 16:40:32'::timestamp, 'TMDay, DD" de "TMMonth" del año "YYYY');

Med en spansk språkinställning producerar detta "Sábado, 12 de Agosto del año 2016".

VÄLJ den sista dagen i månaden

Du kan välja den sista dagen i månaden.

SELECT (date_trunc('MONTH', ('201608'||'01')::date) + INTERVAL '1 MONTH - 1 day')::DATE; 

201608 ersättas med en variabel.

Räkna antalet poster per vecka

VÄLJ datum_trunc ('vecka', <>) SOM "Vecka", räkna (*) FRÅN <> GRUPP AV 1 BESTÄLLNING AV 1;



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow