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

यदि कोई परिणाम नहीं हैं तो MySQL डिफ़ॉल्ट मान का चयन कर रहा है?

मुझे यकीन नहीं है कि आप अपनी चयन सूची में comment_id क्यों शामिल कर रहे हैं यदि आप केवल उपयोगकर्ता और उनकी रैंकिंग चाहते हैं। क्या आप उस विशेष टिप्पणी पर केवल उनकी रैंकिंग चाहते हैं? मैं अभी के लिए एक समाधान दूंगा जो मानता है कि आप रैंकिंग के साथ एक पूर्ण सदस्य सूची चाहते हैं:

SELECT
    M.member_id,
    M.user_id,
    M.avatar,
    COALESCE(SUM(C.vote_value), 0) AS vote_value_sum,
    COALESCE(SUM(C.best), 0) AS best_sum,
    COALESCE(SUM(C.vote_value), 0) + SUM(C.best) * 10 AS total_value
FROM
    Members M
LEFT OUTER JOIN Comments C ON
    C.author_id = M.member_id
GROUP BY
    M.member_id
ORDER BY
    total_value DESC
LIMIT 0, 20

(यह मानता है कि वोट_वैल्यू और सर्वश्रेष्ठ NULL कॉलम नहीं हैं या MySQL SUM मानों की गणना करते समय उन पर ध्यान नहीं देगा - मेरा मानना ​​​​है कि यह करता है, लेकिन मैंने इसका परीक्षण नहीं किया है)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. प्रतिकृति प्रबंधक ने कनेक्शन खोलने पर एक अपवाद फेंक दिया

  2. XAMPP के साथ आसानी से वेब सर्वर सेट करें

  3. आप MySQL क्वेरी में स्ट्रिंग से संख्यात्मक मान कैसे निकालते हैं?

  4. टेक्स्ट या वर्चर का उपयोग करने के लिए कौन सा डेटाटाइप बेहतर है?

  5. लिनक्स में वर्तमान में प्रयुक्त MySQL कॉन्फ़िगरेशन फ़ाइल के स्थान का पता कैसे लगाएं