ใช่ เป็นไปได้ที่จะคำนวณความสัมพันธ์ในแบบสอบถาม เพื่อให้เข้าใจถึงความสัมพันธ์ในคิวรี คุณต้องสร้างตารางก่อน แบบสอบถามเพื่อสร้างตารางมีดังนี้
mysql> สร้างตาราง correlationDemo -> ( -> ค่า float ไม่ null, -> value2 float ไม่ null -> ); เคียวรีตกลง 0 แถวได้รับผลกระทบ (0.62 วินาที)
แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังต่อไปนี้เพื่อแทรกระเบียนในตาราง
mysql> แทรกลงในค่า correlationDemo (1,10); แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.19 วินาที) mysql> แทรกลงในค่า correlationDemo (2,4); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรก ลงในค่า correlationDemo(3,5);Query OK, 1 แถวได้รับผลกระทบ (0.14 วินาที)mysql> แทรกลงในค่า correlationDemo(6,17);Query OK, 1 แถวได้รับผลกระทบ (0.16 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select
แบบสอบถามมีดังนี้
mysql> เลือก *จาก correlationDemo;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+-------+---------+| ค่า | value2 |+-------+---------+| 1 | 10 || 2 | 4 || 3 | 5 || 6 | 17 |+-------+-------+4 แถวในชุด (0.03 วินาที)นี่คือความสัมพันธ์แบบง่ายในแบบสอบถาม
mysql> เลือก @firstValue:=avg(value), -> @secondValue:=avg(value2), -> @division:=(stddev_samp(value) * stddev_samp(value2)) จาก correlationDemo;
ต่อไปนี้เป็นผลลัพธ์
<ก่อนหน้า>+-----------------------------------+-------------------------- -------------------------------------------------------- --------------+| @firstValue:=avg(value) | @secondValue:=avg(value2) | @division:=(stddev_samp(value) *stddev_samp(value2)) |+--------------------------------------------------------- --------------------------------------------------------------- --------------------+| 3 | 9 | 12.8490685617215 |+-----------------------------+--------------------------- ----------------------------------------------------- ------------+1 แถวในชุด (0.00 วินาที)นี่คือการคำนวณของแบบสอบถามความสัมพันธ์ข้างต้น
mysql> เลือกผลรวม ( ( value - @firstValue ) * (value2 - @secondValue) ) / ((count(value) -1) *@division) from -> correlationDemo;
ต่อไปนี้เป็นผลลัพธ์
<ก่อน>+--------------------------------------------- ----------------------------------------------------+| sum( ( value - @firstValue ) * (value2 - @secondValue) ) / ((count(value) -1) * @division) |+----------------- -------------------------------------------------- ------------------------------------+| 0.7008850777290727 |+---------------------------------------------------------- ----------------------------------------------------+1 แถวในชุด (0.00 วินาที)