Chào buổi chiều tất cả,Chuỗi Postgres đến ngày VÍ DỤ 10Apr77 đến 10/04/1977
Tôi khá mới đối với PostgreSQL, vì vậy xin lỗi trước nếu câu hỏi của tôi thấp hơn mức trung bình.
Tôi nhận được một số dữ liệu ở định dạng tệp csv flay và được chèn vào bảng dàn để tôi xem trước dữ liệu. Trên những thứ tôi gặp phải vấn đề là trường dữ liệu được lưu trữ dưới dạng giá trị chuỗi. Ví dụ: 10Apr96 - 01Jan85
Tôi đã viết truy vấn dưới đây để xem liệu có thể phá vỡ chuỗi lên và lặp lại với nhau theo định dạng ngày hay không.
Có cách nào dễ dàng hơn để đạt được những gì tôi đang làm không?
select
concat(cast(substring(datetext,1,2) as varchar(2)),'/',case
when cast(substring(datetext,3,3) as varchar(3)) = 'Jan' then '01'
when cast(substring(datetext,3,3) as varchar(3)) = 'Feb' then '02'
when cast(substring(datetext,3,3) as varchar(3)) = 'Mar' then '03'
when cast(substring(datetext,3,3) as varchar(3)) = 'Apr' then '04'
when cast(substring(datetext,3,3) as varchar(3)) = 'May' then '05'
when cast(substring(datetext,3,3) as varchar(3)) = 'Jun' then '06'
when cast(substring(datetext,3,3) as varchar(3)) = 'Jul' then '07'
when cast(substring(datetext,3,3) as varchar(3)) = 'Aug' then '08'
when cast(substring(datetext,3,3) as varchar(3)) = 'Sep' then '09'
when cast(substring(datetext,3,3) as varchar(3)) = 'Oct' then '10'
when cast(substring(datetext,3,3) as varchar(3)) = 'Nov' then '11'
when cast(substring(datetext,3,3) as varchar(3)) = 'Dec' then '12'
end,'/',cast(substring(datetext,6,2) as varchar(2))) as dt
from tbl_loading_horses_tmp
Cảm ơn bạn đã hiển thị mã bạn đang sử dụng và một số dữ liệu được áp dụng. Trong tương lai, bạn cũng nên đề cập đến phiên bản PostgreSQL của mình, nhưng cảm ơn bạn đã nỗ lực giải thích rõ ràng, +1. –