Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เราจะดึงผลลัพธ์ที่มีค่าทศนิยมของคอลัมน์ในรูปแบบที่ระบุได้อย่างไร?


ฟังก์ชัน MySQL FORMAT() แปลงตัวเลขเป็นรูปแบบเช่น #,###,###.### ซึ่งปัดเศษขึ้นตามจำนวนตำแหน่งทศนิยมที่ระบุและส่งคืน ผลลัพธ์เป็นสตริง สามารถใช้เพื่อดึงผลลัพธ์ที่มีค่าทศนิยมของคอลัมน์ในรูปแบบที่ระบุ เพื่อให้เข้าใจ เรากำลังยกตัวอย่างของตาราง 'estimated_cost' ซึ่งมีข้อมูลดังต่อไปนี้ -

mysql> Select * from estimated_cost;
+----+-----------------+-----------+---------------+
| Id | Name_Company    | Tender_id | Tender_value  |
+----+-----------------+-----------+---------------+
| 1  | ABC Ltd.        | 110       | 256.3256879   |
| 2  | Chd Ltd.        | 116       | 8569.25647879 |
| 3  | City group Ltd. | 202       | 23647.2365987 |
| 4  | Hjkl Ltd.       | 215       | 6598.327846   |
+----+-----------------+-----------+---------------+
4 rows in set (0.00 sec)

ตอนนี้ สมมติว่าถ้าเราต้องการดูค่าของคอลัมน์ 'Tender_value' ถึงจำนวนตำแหน่งทศนิยมที่ระบุ ก็สามารถทำได้โดยใช้ข้อความค้นหาต่อไปนี้ -

mysql> Select FORMAT(Tender_value,2) from estimated_cost;
+------------------------+
| FORMAT(Tender_value,2) |
+------------------------+
| 256.33                 |
| 8,569.26               |
| 23,647.24              |
| 6,598.33               |
+------------------------+
4 rows in set (0.00 sec)

ข้อความค้นหาด้านบนจะคืนค่า Tender_value สูงสุด 2 ตำแหน่ง

mysql> Select FORMAT(Tender_value,1) from estimated_cost1;
+------------------------+
| FORMAT(Tender_value,1) |
+------------------------+
| 256.3                  |
| 8,569.3                |
| 23,647.2               |
| 6,598.3                |
+------------------------+
4 rows in set (0.00 sec)

ข้อความค้นหาด้านบนจะคืนค่า Tender_value สูงสุด 1 ตำแหน่ง