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

sql - श्रेणी के अनुसार समूह बिना मूल्यों के श्रेणियों को शामिल करने के लिए

इस क्वेरी को आज़माएं (SQL Fiddle पर भी ):

WITH ranges AS (
    SELECT (ten*10)::text||'-'||(ten*10+9)::text AS range,
           ten*10 AS r_min, ten*10+9 AS r_max
      FROM generate_series(0,9) AS t(ten))
SELECT r.range, count(s.*)
  FROM ranges r
  LEFT JOIN scores s ON s.score BETWEEN r.r_min AND r.r_max
 GROUP BY r.range
 ORDER BY r.range;

संपादित करें:

आप पैरामीटर को generate_series() . में बदलकर आसानी से रेंज को एडजस्ट कर सकते हैं . ranges . को सुनिश्चित करने के लिए निम्नलिखित निर्माण का उपयोग करना संभव है हमेशा आपके स्कोर को कवर करेगा:

SELECT (ten*10)::text||'-'||(ten*10+9)::text AS range,
       ten*10 AS r_min, ten*10+9 AS r_max
  FROM generate_series(0,(SELECT max(score)/10 FROM scores)) AS t(ten))

ranges . के लिए सीटीई।



  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 कॉलम के साथ कई रिकॉर्ड में से एक स्ट्रिंग का निर्माण

  2. ओडू में कई 2 कई फ़ील्ड जोड़ने के बाद संबंध पहले से मौजूद है

  3. PostgreSQL फ़ंक्शन पैरामीटर के रूप में तालिका का नाम

  4. 'प्रक्रिया' पोस्टग्रेस्क्ल के पास गलत सिंटैक्स

  5. एक से अनेक में शामिल हों और एकल परिणाम प्राप्त करें