Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

सबसे समान संख्यात्मक पंक्ति खोजने के लिए MySQL क्वेरी

@Eggyal की पद्धति में थोड़ा सुधार करते हुए, मैंने उन मदों की संख्या को शामिल किया जिनसे हम मिलान कर सकते हैं।

SELECT   u2.user_id

-- join our user to their scores
FROM     (users u1 JOIN scores s1 USING (user_id))

-- and then join other users and their scores
    JOIN (users u2 JOIN scores s2 USING (user_id))
      ON s1.item_id  = s2.item_id
     AND u1.user_id != u2.user_id

-- filter for our user of interest
WHERE    u1.user_id = ?

-- group other users' scores together
GROUP BY u2.user_id

-- subtract the degree of difference in correlating scores from the number of correlating scores
ORDER BY (SUM(s1.item_id = s2.item_id) - 
  ( SUM(ABS(s2.score - s1.score) + ABS(u2.self - u1.self) ) ) ) DESC


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL डेटाबेस से कैसे जुड़ें?

  2. पायथन:ValueError:असमर्थित स्वरूप वर्ण ''' (0x27) अनुक्रमणिका 1 पर

  3. MySQL regexp पसंद की तुलना में बहुत धीमा है

  4. मुझे AWS EC2 VM से AWS RDS पर MySQL सर्वर से कनेक्ट करने से क्या रोकेगा?

  5. Command.Parameters[@name].Value सही सिंटैक्स