2011-09-06 35 views
12

Tôi có một timestamp PostgreSQL nhưngày từ timestamp nhận được trong Postgressql

2009-12-22 11:01:46 

tôi cần phải thay đổi điều này cho đến nay như

2009-12-22 

Vì vậy mà tôi có thể so sánh ngày tháng trong postgresSQL

Làm thế nào tôi có thể đạt được chuyển đổi này?

Trả lời

34

Truyền tới date.

SELECT yourtimestamp::date; 

Nếu bạn cần phải trích xuất các loại công cụ, bạn có thể muốn sử dụng EXTRACT hoặc date_trunc

Cả hai liên kết này đến cùng một trang, được bạn sẽ tìm thêm ngày/chức năng thời gian liên quan.

3

Bạn có thể sử dụng một trong những Postgres date functions, chẳng hạn như date_trunc, hoặc bạn chỉ có thể cast nó, như thế này:

SELECT timestamp '2009-12-22 11:01:46'::date 

>>> 2009-12-22 
+0

date_trunc ('ngày', yourtimestamp) sẽ trả về một timesamp, nhưng với giờ , phút và giây bằng 0. Nó sẽ không chuyển đổi giá trị thành một ngày. Dàn diễn viên là anwser chính xác. – pupitetris

Các vấn đề liên quan