Hiện tại sql trả về ngày là 2013-07-01 00: 00: 00.000. Tôi chỉ muốn phần ngày ở định dạng dd/mm/yyyy để khi xuất nó sang excel, tôi vẫn có thể sắp xếp dựa trên thứ tự tăng dần hoặc giảm dần. Tôi đã thử varchar nhưng nó không được sắp xếp trong excel.Chỉ lấy ngày từ datetime datl mà không cần chuyển đổi sang varchar để tôi có thể sắp xếp nó trong excel
7
A
Trả lời
13
Bạn có thể chuyển đổi thành DATE
, nhưng Excel có thể hiển thị chúng dưới dạng số, không chắc chắn.
SELECT CONVERT(DATE, col) FROM dbo.table;
Nếu không, bạn có thể sử dụng một kiểu cụ thể, ví dụ:
-- yyyy-mm-dd - standard, unambiguous format
SELECT CONVERT(CHAR(10), col, 120) FROM dbo.table;
Hoặc
-- mm/dd/yyyy - ambiguous, regional format
SELECT CONVERT(CHAR(10), col, 101) FROM dbo.table;
3
Hãy thử sử dụng CAST
to Date:
SELECT Cast('2013-07-01 00:00:00.000' AS DATE)
5
Để định dạng như mm/dd/yyyy
, chuyển đổi sang VARCHAR
sử dụng định dạng 101;
SELECT CONVERT(VARCHAR, GETDATE(), 101);
> 08/01/2013
0
Để định dạng dd/mm/yyyy sử dụng 103 tức là SELECT CONVERT (VARCHAR (10), COL_Name, 103);
24/08/2016
Nó cho ngày ở định dạng 2013/07/01 – user1733271
@ user1733271 có, là nhận xét của bạn chỉ là một xác nhận, hoặc đây là một vấn đề? –
Nếu tôi sử dụng CHAR, nó sẽ không cho phép tôi sắp xếp dựa trên ngày trong excel – user1733271