Computer >> Máy Tính >  >> Lập trình >> MySQL

Giá trị âm của đối số thứ hai, chỉ định số vị trí thập phân, trên đầu ra của hàm MySQL TRUNCATE (), sẽ có ảnh hưởng gì?


Nếu chúng tôi chỉ định giá trị âm của đối số thứ hai thì các chữ số trước dấu thập phân sẽ bị xóa mà không có làm tròn. Số chữ số sẽ bị xóa phụ thuộc vào giá trị của đối số âm thứ hai. Các ví dụ sau sẽ chứng minh sự thay đổi, tùy thuộc vào giá trị âm của đối số thứ hai, trong đầu ra của hàm TRUNCATE ().

mysql> Select TRUNCATE(1789.456,-1);
+-----------------------+
| TRUNCATE(1789.456,-1) |
+-----------------------+
|                  1780 |
+-----------------------+
1 row in set (0.00 sec)  

Truy vấn trên trả về 1780 vì chữ số đầu tiên trước dấu thập phân bị xóa do giá trị -1 của đối số thứ hai.

mysql> Select TRUNCATE(1789.456,-2);
+-----------------------+
| TRUNCATE(1789.456,-2) |
+-----------------------+
|                  1700 |
+-----------------------+
1 row in set (0.00 sec)  

Truy vấn trên trả về 1700 vì hai chữ số trước dấu thập phân bị xóa do -2 giá trị của đối số thứ hai.

mysql> Select TRUNCATE(1789.456,-3);
+-----------------------+
| TRUNCATE(1789.456,-3) |
+-----------------------+
|                  1000 |
+-----------------------+
1 row in set (0.00 sec)  

Truy vấn trên trả về 1000 vì ba chữ số trước dấu thập phân bị xóa do giá trị -3 của đối số thứ hai.

mysql> Select TRUNCATE(1789.456,-4);
+-----------------------+
| TRUNCATE(1789.456,-4) |
+-----------------------+
|                     0 |
+-----------------------+
1 row in set (0.00 sec)  

Truy vấn trên trả về 0 vì tổng số chữ số trước dấu thập phân là 4 và giá trị của đối số thứ hai là -4.