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

นับจากสองตารางและให้นับรวมของสตริงใน MySQL?


หากต้องการนับ ให้ใช้ MySQL COUNT(*) อย่างไรก็ตาม ด้วย UNION ALL คุณจะสามารถนับจำนวนสตริงรวมกันได้ ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1( Name varchar(20));เคียวรีตกลง 0 แถวได้รับผลกระทบ (0.49 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก เรากำลังแทรกค่าสตริงในตารางแรก -

mysql> แทรกลงในค่า DemoTable1 ('Chris'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า DemoTable1 ('Robert'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> ลงในค่า DemoTable1 ('Mike'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DemoTable1 ('Robert'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable1;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+---------+| ชื่อ |+-------+| คริส || โรเบิร์ต || ไมค์ || Robert |+--------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อสร้างตารางที่สอง เรากำลังแทรกค่าสตริงในตารางที่สองเช่นกัน -

mysql> สร้างตาราง DemoTable2( Name varchar(40));เคียวรีตกลง 0 แถวได้รับผลกระทบ (0.43 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable2 ('Robert'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า DemoTable2 ('Chris'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรก ลงในค่า DemoTable2 ('Robert'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.31 วินาที) mysql> แทรกลงในค่า DemoTable2 ('David'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable2;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+---------+| ชื่อ |+-------+| โรเบิร์ต || คริส || โรเบิร์ต || David |+--------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อรับการนับรวมของค่าสตริงจากทั้งตารางโดยใช้ COUNT(*) และ UNION ALL -

mysql> เลือก tbl.Name,count(*) เป็น Total_Count จาก ( เลือกชื่อจาก DemoTable1 UNION ALL เลือกชื่อจาก DemoTable2)tblgroup โดย tbl.Name;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ การนับรวมจะแสดงในคอลัมน์ใหม่ “Total_Count” -

<ก่อนหน้า>+---------+-------------+| ชื่อ | Total_Count |+-------------+-------------+| คริส | 2 || โรเบิร์ต | 4 || ไมค์ | 1 || เดวิด | 1 |+-------+-------------+4 แถวในชุด (0.00 วินาที)