2017-06-06 9 views
0

日付をdd/mm/yyyy hh:mm:ssとして返す次のクエリがありますが、時間と日付を別々の列として抽出したいのですが、どうすればいいですか?私は、PostgreSQLに新しいですPostgreSQL取得日

おかげ Kathの時間のための

select 
    up.mis_id, 
    up.name, 
    up.surname, 
    es.created as "signed in", 
    es1.created as "signed out", 
    bb.name as "location" 


from users_person as up 

join users_role as ur on ur.id = up.role_id 
join events_event as ee on ee.user_id = up.id 
join events_swipe as es on es.id = ee.sign_in_id 
join events_swipe as es1 on es1.id = ee.sign_out_id 
join buildings_building as bb on bb.id = es.location_id 

答えて

1

使用明示的なキャスト、:

es.created::time 

と日付の

es.created::date 

例:

t=# select now()::time(0) "Time",now()::date "Date"; 
    Time | Date 
----------+------------ 
08:19:59 | 2017-06-06 
(1 row) 
+0

これがポイントに取り組んできましたが、日付と時刻が(これが大きい)、日付のしかしフォーマットはまだDD/MM/YYYYのHHで今別のものを参照してください。 06/2017 00:00:00 – KathH

+0

これはまったく異なる質問です。まずは既存の回答を探してください。すでに答えがあるので、あなたのクライアントがどのように表示しているかは、すでに –

+0

@ KathHです。 PostgreSQLは、 'es.created :: date'(これに時間コンポーネントを持たない)に対してのみ' date'を送ります。 – pozs

0

to_charを使用してください。 MM:SSの例えば06/Postgresのdocumentation

select to_char(current_timestamp, 'HH12:MI:SS') as time, 
     to_char(current_timestamp, 'mm/dd/yyyy') as date; 
     time | date  
    ----------+------------ 
    04:43:13 | 06/06/2017 
    (1 row) 
+0

すごくうまくいってくれてありがとうございました! – KathH

関連する問題