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

डेटा को अलग-अलग श्रेणियों में समूहित करने के लिए MySQL क्वेरी

आपको सभी मूल्य श्रेणियों वाली एक इनलाइन तालिका बनानी होगी। फिर एक LEFT JOIN अपेक्षित परिणाम प्राप्त करने के लिए आपकी क्वेरी के आधार पर एक व्युत्पन्न तालिका के साथ:

SELECT x.PriceRange, COALESCE(TotalWithinRange, 0) AS TotalWithinRange
FROM (
  SELECT "0 - 10" AS PriceRange 
  UNION SELECT "10 - 20"
  UNION SELECT "20 - 30"
  UNION SELECT "30 - 40"
  UNION SELECT "40 - 50"
  UNION SELECT "over 50" ) x
LEFT JOIN (  
   SELECT
      CASE when price >= 0 and price <= 10 then "0 - 10"
           when price > 10 and price <= 20 then "10 - 20"
           when price > 20 and price <= 30 then "20 - 30"
           when price > 30 and price <= 40 then "30 - 40"
           when price > 40 and price <= 50 then "40 - 50"
           else "over 50"
      END AS PriceRange,
      COUNT(*) as TotalWithinRange
   FROM YourTable
   GROUP BY 1 ) y ON x.PriceRange = y.PriceRange

एसक्यूएल फिडल डेमो



  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. MySQL पूर्ण पाठ तीन या उससे कम अक्षरों वाले शब्दों की खोज करता है

  3. एक ही डेटा के साथ दो डेटाबेस को कैसे मर्ज करें, लेकिन अलग-अलग पीके के साथ, बिना डुप्लीकेट फ़ील्ड के?

  4. प्रॉक्सी थ्रो के माध्यम से mySql का उपयोग करने के कारण:java.sql.SQLException:कॉल करने योग्य कथन समर्थित नहीं हैं। पुनः कनेक्ट करने के बाद

  5. मैं mySQL और PHP से बहुआयामी सरणी के रूप में परिणाम कैसे प्राप्त करूं?