2012-03-19 40 views
34

Các dữ liệu hiện tại của bảng là:Chuyển đổi dữ liệu tiêu cực thành tích cực dữ liệu trong SQL Server

a b 
--------- 
-1 5 
-11 2 
-5 32 

Yêu cầu của tôi là để chuyển đổi tất cả các dữ liệu vào giá trị tích cực.

Thật không may, tôi đã quên tên của hàm dựng sẵn của SQL Server cho phép chuyển đổi.

+2

máy chủ sql ... chức năng abs – mservidio

+1

Đừng bận tâm đến chúng. Câu hỏi hay và câu trả lời hay được cung cấp! –

Trả lời

72

Bạn đang nghĩ đến hàm ABS, cung cấp cho bạn giá trị tuyệt đối của dữ liệu số.

SELECT ABS(a) AS AbsoluteA, ABS(b) AS AbsoluteB 
FROM YourTable 
6

Sử dụng hàm giá trị tuyệt đối ABS. Cú pháp là

ABS (numeric_expression) 
6
UPDATE mytbl 
SET a = ABS(a) 
where a < 0 
16

Giải pháp tốt nhất là: từ tích cực đến tiêu cực hay từ âm sang dương

Đối với tiêu cực:

SELECT ABS(a) * -1 AS AbsoluteA, ABS(b) * -1 AS AbsoluteB 
FROM YourTable 

Đối tích cực:

SELECT ABS(a) AS AbsoluteA, ABS(b) AS AbsoluteB 
FROM YourTable 
+0

Các giải pháp tốt nhất đến từ việc đọc kỹ câu hỏi. OP muốn tất cả mọi thứ đã không đảo ngược mọi thứ. – Jamiec

+0

Đồng ý nhưng tôi đã đến đây để tìm thấy những điều tích cực để tiêu cực, và giải pháp này đi vào tâm trí của tôi và tôi đăng nó. và nếu bạn nhận thấy tôi được đề cập trong câu trả lời tích cực để tiêu cực và tiêu cực đến tích cực. Có thể hữu ích cho một số người khác. –

+0

bây giờ tôi nghĩ rằng nó là hữu ích: D –

Các vấn đề liên quan