Helpex - Trao đổi & giúp đỡ Đăng nhập
33

Tôi có một cột được gọi TotalAreavà định dạng của nó là numeric (12,2).

Tôi muốn nó hiển thị các số có dấu phân cách hàng nghìn để khi tôi

select TotalArea from table

để hiển thị cho tôi một định dạng như thế nào 1,234.00.

Làm thế nào tôi có thể làm điều đó? Cảm ơn!

33 hữu ích 1 bình luận 92k xem chia sẻ
43

Hãy thử cách này:

SELECT REPLACE(CONVERT(VARCHAR, CONVERT(MONEY, TotalArea), 1), '.00', '') 
FROM table

hoặc là

SELECT CAST(CONVERT(VARCHAR, CAST(123456 AS MONEY), 1) AS VARCHAR)
FROM table
43 hữu ích 3 bình luận chia sẻ
42
SELECT FORMAT(12345,'#,0.00');

SELECT FORMAT(TotalArea,'#,0.00') from table;

Tham khảo: https://msdn.microsoft.com/en-us/library/ee634206(v=sql.105).aspx

42 hữu ích 5 bình luận chia sẻ
19

Định dạng số để hiển thị là điều nên được thực hiện trong lớp hiển thị chứ không phải trong cơ sở dữ liệu. Vì vậy, trong bất kỳ ứng dụng nào dữ liệu này kết thúc được sử dụng, bạn nên định dạng nó ở đó. Rất tiếc, Management Studio không cung cấp nhiều quyền kiểm soát về vấn đề này.

19 hữu ích 5 bình luận chia sẻ
3

Tôi biết câu hỏi dành cho sql server 2008 nhưng nếu bạn có sql server 2012+, bạn có thể sử dụng định dạng như sau:

SELECT FORMAT(12345.5634, 2);

Tham khảo: https://www.w3schools.com/sql/func_mysql_format.asp

3 hữu ích 2 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ sql sql server database sql server 2008 tsql , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm

loading