Tôi muốn chọn một ngày (cột của tôi là một loại dấu thời gian). Nhưng khi trong cột là một ngày NULL, tôi muốn trả về một chuỗi rỗng. làm như thế nào? Tôi viết này:Chọn ngày (dấu thời gian) từ PostgreSQL dưới dạng chuỗi (char), hãy cẩn thận với giá trị NULL
SELECT
CASE WHEN to_char(last_post, 'MM-DD-YYYY HH24:MI:SS') IS NULL THEN ''
ELSE to_char(last_post, 'MM-DD-YYYY HH24:MI:SS') AS last_post END
to_char(last_post, 'MM-DD-YYYY HH24:MI:SS') AS last_post, content
FROM topic;
Nhưng nó cho thấy tôi một số sai sót, không thực sự biết lý do tại sao:
ERROR: syntax error at or near "as"
LINE 1: ...ELSE to_char(last_post, 'MM-DD-YYYY HH24:MI:SS') AS last_po...
^
Điều này có thể được đơn giản hóa cho 'trường hợp khi last_post là null rồi '' khác ...' –
@a_horse_with_no_name Bạn nói đúng, cảm ơn! Tôi chỉ tập trung vào việc di chuyển 'AS ...' sau và không nghĩ đến việc đơn giản hóa truy vấn ... Tôi sẽ sửa lỗi đó ngay bây giờ! – Jerry
Vâng, bây giờ bạn không định dạng ngày như dự định. –