Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách chuyển đổi số nguyên thành số thập phân trong SQL Server

Vấn đề:

Bạn muốn chuyển đổi một giá trị số nguyên thành kiểu dữ liệu DECIMAL trong SQL Server.

Hãy chuyển đổi một số nguyên thành kiểu dữ liệu DECIMAL.

Giải pháp 1:

Chúng tôi sẽ sử dụng CAST() hàm số. Đây là truy vấn bạn sẽ viết:

SELECT 
  CAST(12 AS DECIMAL(7,2) ) AS decimal_value
;

Đây là kết quả:

decimal_value
12,00

Thảo luận:

Sử dụng CAST() hàm chuyển đổi một số nguyên sang kiểu dữ liệu DECIMAL. Hàm này nhận một biểu thức hoặc một tên cột làm đối số, theo sau là từ khóa AS và kiểu dữ liệu mới. Trong ví dụ của chúng tôi, chúng tôi đã chuyển đổi một số nguyên (12) thành một giá trị thập phân (12,00). Giá trị được hiển thị có hai dấu thập phân vì DECIMAL trong CAST() có hai dấu thập phân.

SQL Server cung cấp một tùy chọn khác:CONVERT() . Đây không phải là một hàm Chuẩn SQL như CAST() . Truy vấn dưới đây cho thấy công dụng của nó.

Giải pháp 2:

Đây là một cách khác để chuyển đổi một số nguyên thành một loại DECIMAL:

SELECT 
  CONVERT(DECIMAL(7,2),12 ) AS decimal_value
;

Truy vấn này tạo ra kết quả giống như CAST() , nhưng cần hai đối số bắt buộc:kiểu dữ liệu và một biểu thức, giá trị hoặc tên cột để chuyển đổi. Tham số thứ ba tùy chọn chỉ định cách định dạng giá trị trong kiểu mới của nó. Đọc thêm về định dạng giá trị trong tài liệu SQL Server chính thức.

Nếu bạn không cần trả lại giá trị ở một định dạng nhất định, hãy sử dụng CAST() .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Di chuyển đám mây 101:Di chuyển từ SQL Server sang Azure

  2. SQL Server 2005 Làm thế nào để tạo ra một ràng buộc duy nhất?

  3. Không thể tìm thấy dbo cột hoặc hàm do người dùng xác định hoặc dbo tổng hợp .plitfn hoặc tên không rõ ràng

  4. Một số tin tức tuyệt vời cho khách hàng Standard Edition trong SQL Server 2014

  5. Cảnh báo tác nhân SQL Server