ในการนับยูเนี่ยนคือการนับผลลัพธ์ของยูเนี่ยน ให้ใช้ไวยากรณ์ด้านล่าง -
เลือก COUNT(*)FROM(เลือก yourColumName1 จาก yourTableName1UNIONSELECT yourColumName1 จาก yourTableName2) anyVariableName;
เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตารางสองตารางพร้อมระเบียนบางส่วน แบบสอบถามเพื่อสร้างตารางมีดังนี้ −
mysql> สร้างตาราง union_Table1-> (-> UserId int-> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.47 วินาที)
แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้ −
mysql> แทรกลงในค่า union_Table1 (1); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.18 วินาที) mysql> แทรกลงในค่า union_Table1 (10) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า union_Table1 ( 20);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.09 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −
mysql> เลือก *จาก union_Table1;
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+---------+| รหัสผู้ใช้ |+---------+| 1 || 10 || 20 |+-------+3 แถวในชุด (0.00 วินาที)แบบสอบถามเพื่อสร้างตารางที่สอง
mysql> สร้างตาราง union_Table2-> (-> UserId int-> );เคียวรีตกลง 0 แถวได้รับผลกระทบ (0.69 วินาที)
แทรกระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้
mysql> แทรกลงในค่า union_Table2 (1); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> แทรกลงในค่า union_Table2 (30); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.26 วินาที) mysql> แทรกลงในค่า union_Table2 ( 50);แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.13 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −
mysql> เลือก *จาก union_Table2;
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+---------+| รหัสผู้ใช้ |+---------+| 1 || 30 || 50 |+-------+3 แถวในชุด (0.00 วินาที)ในตารางทั้งสอง ถ้าระเบียนใดระเบียนหนึ่งเหมือนกัน จะพิจารณาเพียงครั้งเดียว นี่คือคิวรีที่จะนับในคิวรีแบบร่วม
mysql> เลือกจำนวน (*) เป็น UnionCount from-> (-> เลือก UserId ที่แตกต่างจาก union_Table1-> union-> เลือก UserId ที่แตกต่างจาก union_Table2-> )tbl1;
ต่อไปนี้เป็นผลลัพธ์ที่แสดงการนับ
<ก่อนหน้า>+-----------+| UnionCount |+-----------+| 5 |+------------+1 แถวในชุด (0.00 วินาที)