हां, क्वेरी में कोरिलेशन की गणना करना संभव है। क्वेरी में कोरिलेशन समझने के लिए, आपको पहले एक टेबल बनाना होगा। टेबल बनाने की क्वेरी निम्नलिखित है:
mysql> create table correlationDemo
-> (
-> value FLOAT NOT NULL,
-> value2 FLOAT NOT NULL
-> ); Query OK, 0 rows affected (0.62 sec)
INSERT कमांड की मदद से टेबल में कुछ रिकॉर्ड डालें। टेबल में रिकॉर्ड डालने की क्वेरी निम्नलिखित है:
mysql> INSERT INTO correlationDemo VALUES(1,10); Query OK, 1 row affected (0.19 sec) mysql> INSERT INTO correlationDemo VALUES(2,4); Query OK, 1 row affected (0.16 sec) mysql> INSERT INTO correlationDemo VALUES(3,5); Query OK, 1 row affected (0.14 sec) mysql> INSERT INTO correlationDemo VALUES(6,17); Query OK, 1 row affected (0.16 sec)
SELECT स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें।
क्वेरी निम्नलिखित है:
mysql> SELECT * FROM correlationDemo;
निम्नलिखित आउटपुट है:
+-------+--------+ | value | value2 | +-------+--------+ | 1 | 10 | | 2 | 4 | | 3 | 5 | | 6 | 17 | +-------+--------+ 4 rows in set (0.03 sec)
अब यहां क्वेरी में सिंपल कोरिलेशन है:
mysql> SELECT @firstValue:=AVG(value),
-> @secondValue:=AVG(value2),
-> @division:=(STDDEV_SAMP(value) * STDDEV_SAMP(value2)) FROM correlationDemo;
निम्नलिखित आउटपुट है:
+-------------------------+---------------------------+-------------------------------------------------------+ | @firstValue:=AVG(value) | @secondValue:=AVG(value2) | @division:=(STDDEV_SAMP(value) *STDDEV_SAMP(value2)) | +-------------------------+---------------------------+-------------------------------------------------------+ | 3 | 9 | 12.84090685617215 | +-------------------------+---------------------------+-------------------------------------------------------+ 1 row in set (0.00 sec)
उपरोक्त कोरिलेशन क्वेरी की गणना यहां है:
mysql> SELECT SUM((value - @firstValue) * (value2 - @secondValue)) / ((COUNT(value) - 1) * @division) FROM
-> correlationDemo;
निम्नलिखित आउटपुट है:
+--------------------------------------------------------------------------------------------+ | SUM((value - @firstValue) * (value2 - @secondValue)) / ((COUNT(value) - 1) * @division) | +--------------------------------------------------------------------------------------------+ | 0.7008850777290727 | +--------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)