Saya memiliki query di sql, saya telah mendapatkan tanggal dalam format dd/mm/yy
Contoh: 25/jun/2013
.
Bagaimana saya bisa mengubahnya untuk SQL server?
Sudah ada beberapa jawaban dan jenis format untuk SQL server 2008. Tetapi metode ini agak ambigu dan itu akan sulit bagi anda untuk mengingat nomor sehubungan dengan Format Tanggal Tertentu. Yang's mengapa dalam versi berikutnya dari SQL server ada pilihan yang lebih baik.
FORMAT ( value, format [, culture ] )
Dengan budaya pilihan, anda dapat menentukan tanggal yang sesuai dengan pemirsa anda.
DECLARE @d DATETIME = '10/01/2011';
SELECT FORMAT ( @d, 'd', 'en-US' ) AS 'US English Result'
,FORMAT ( @d, 'd', 'en-gb' ) AS 'Great Britain English Result'
,FORMAT ( @d, 'd', 'de-de' ) AS 'German Result'
,FORMAT ( @d, 'd', 'zh-cn' ) AS 'Simplified Chinese (PRC) Result';
SELECT FORMAT ( @d, 'D', 'en-US' ) AS 'US English Result'
,FORMAT ( @d, 'D', 'en-gb' ) AS 'Great Britain English Result'
,FORMAT ( @d, 'D', 'de-de' ) AS 'German Result'
,FORMAT ( @d, 'D', 'zh-cn' ) AS 'Chinese (Simplified PRC) Result';
US English Result Great Britain English Result German Result Simplified Chinese (PRC) Result
---------------- ----------------------------- ------------- -------------------------------------
10/1/2011 01/10/2011 01.10.2011 2011/10/1
US English Result Great Britain English Result German Result Chinese (Simplified PRC) Result
---------------------------- ----------------------------- ----------------------------- ---------------------------------------
Saturday, October 01, 2011 01 October 2011 Samstag, 1. Oktober 2011 2011年10月1日
Untuk OP's solusi, kita dapat menggunakan format berikut ini, yang telah disebutkan oleh @Martin Smith:
FORMAT(GETDATE(), 'dd/MMM/yyyy', 'en-us')
Beberapa contoh format tanggal:
Jika anda ingin lebih banyak format tanggal dari SQL server, anda harus mengunjungi:
kita dapat mengkonversi tanggal dalam berbagai format seperti
SELECT convert(varchar, getdate(), 106)
Ini kembali dd mon yyyy
Lebih lanjut di Sini hal Ini dapat membantu anda
Jawaban yang diterima sudah memberikan solusi terbaik dengan menggunakan built dalam format metode pada tahun 2008.
Perlu dicatat bahwa hasil yang dikembalikan adalah tergantung pada bahasa yang masuk namun.
SET language Russian
SELECT replace(CONVERT(NVARCHAR, getdate(), 106), ' ', '/')
Kembali
06/апр/2015
pada saat penulisan.
Untuk orang-orang yang datang di pertanyaan ini pada versi yang lebih baru dari SQL Server metode yang menghindari masalah ini - dan kebutuhan untuk MENGGANTIKAN
adalah
FORMAT(GETDATE(),'dd/MMM/yyyy', 'en-us')
Pada tahun 2005+ ini akan menjadi mungkin untuk menulis CLR UDF yang diterima DateTime, Format Pola dan Budaya untuk mensimulasikan sama.
Coba ini
select convert(varchar,getdate(),100)
parameter ketiga adalah format, jangkauan dari 100
untuk 114
, ada orang yang harus bekerja untuk anda.
Jika anda perlu upload di dd/mm/yyyy
gunakan ini:
replace(convert(char(11),getdate(),113),' ','-')
Ganti getdate()
dengan nama kolom. Ini bekerja untuk saya.