Devdit
 

SELECT COUNT(1 คือ) อะไร แตกต่างจาก COUNT(*) ยังไง

3.7K

SELECT COUNT(1 คือ) การนับข้อมูลทั้งหมด โดยเลข 1 เป็นการบอกให้ฐานข้อมูลทราบว่าให้นับจำนวนจาก Column แรกของตาราง ซึ่งแตกต่างจากการใช้ * เนื่องจาก * จะอ้างถึงทุก Columns ในตาราง สามารถเขียนคำสั่งได้ดังนี้

 

ตัวอย่างที่ 1 การใช้ SELECT COUNT(1)

SELECT COUNT(1) as count_records FROM book;

ผลลัพธ์

+---------------+
| count_records |
+---------------+
|            11 |
+---------------+
1 row in set (0.001 sec)

 

ตัวอย่างที่ 2 การใช้ SELECT COUNT(*)

SELECT COUNT(*) as count_records FROM book;

ผลลัพธ์

+---------------+
| count_records |
+---------------+
|            11 |
+---------------+
1 row in set (0.001 sec)

คำอธิบาย

การใช้ SELECT COUNT(1) และ SELECT COUNT(*) ได้ผลลัพธ์เหมือนกัน แต่การใส่ 1 จะทำให้การเข้าถึงข้อมูลอาจทำได้เร็วกว่าเนื่องจากอ่านจาก Column ที่ 1 อันเดียว แตกต่างจากการใช้ * ซึ่งจะอ้างถึงทุก Columns ในตารางดังกล่าว

เขียน 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ