Hàm SQRT trong SQL



Hàm SQRT trong SQL được sử dụng để tính căn bậc hai của bất kỳ số đã cho nào. Bạn có thể sử dụng lệnh SELECT như sau:

SQL>  select SQRT(16);
+----------+
| SQRT(16) |
+----------+
| 4.000000 |
+----------+
1 row in set (0.00 sec)

Trong ví dụ trên, bạn thấy các giá trị số thực, điều này bởi vì, trong nội tại thì SQL sẽ thao tác phép tính căn bậc hai trong kiểu dữ liệu float.

Bạn cũng có thể sử dụng hàm SQRT để tìm căn bậc hai của các bản ghi đa dạng. Để hiểu chi tiết về hàm SQRT này, bạn theo dõi bảng MUONSACH có các bản ghi sau:

SQL> SELECT * FROM MUONSACH;
+----+---------+-----+-----------+--------+
| ID |  TEN    | TUOI|  KHOAHOC  | SOTIEN |
+----+---------+-----+-----------+---------+
|  1 | Hoang   |  21 | CNTT      | 400000       |
|  2 | Viet    |  19 | DTVT      | 320000     |
|  3 | Thanh   |  18 | KTDN      |  400000      |
|  4 | Nhan    |  19 | CK        |   450000   |
|  5 | Huong   |  20 | TCNH      |   500000     |
|  5 | Huong   |  20 | TCNH      |  200000    |
+----+---------+-----+-----------+---------+
6 rows in set (0.00 sec)

Bây giờ giả sử, dựa trên bảng trên, bạn muốn tính căn bậc hai của tất cả SOTIEN, thì bạn có thể thực hiện điều này bởi sử dụng lệnh:

SQL> SELECT TEN, SQRT(SOTIEN)
    -> FROM MUONSACH;
+------+--------------------------+
| name | SQRT(SOTIEN) |
+------+--------------------------+
| Hoang |                632.455532 |
| Viet  |                565.685425 |
| Thanh |                632.455532 |
| Nhan |                670.820393 |
| Huong |                707.106781 |
| Huong |                447.213595 |
+------+--------------------------+
6 rows in set (0.00 sec)

ham_trong_sql.jsp