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

गिनती और समूह के साथ MySQL क्वेरी

यह मानते हुए कि आपकी तिथि एक वास्तविक datetime है कॉलम:

SELECT MONTH(date), YEAR(date), id_publisher, COUNT(*)
FROM raw_occurrence_record
GROUP BY MONTH(date), YEAR(date), id_publisher

आप अपने महीने और साल को इस तरह जोड़ सकते हैं:

SELECT CONCAT(MONTH(date), '/', YEAR(date)) AS Month, id_publisher, COUNT(*)
FROM raw_occurrence_record
GROUP BY MONTH(date), YEAR(date), id_publisher

उन महीनों को खोजने के लिए जहां कोई रिकॉर्ड नहीं हैं, आपको एक तिथि तालिका की आवश्यकता होगी। यदि आप एक नहीं बना सकते हैं, तो आप UNION ALL कर सकते हैं इस तरह की कैलेंडर तालिका:

SELECT a.year, a.month, b.id_publisher, COUNT(b.id_publisher) AS num
FROM
  (SELECT 11 AS month, 2012 AS year
   UNION ALL
   SELECT 12, 2012
   UNION ALL
   SELECT 1, 2013
   UNION ALL
   SELECT 2, 2013) a
LEFT JOIN raw_occurence_record b
  ON YEAR(b.date) = a.year AND MONTH(b.date) = a.month
GROUP BY a.year, a.month, b.id_publisher

एक डेमो देखें




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैसे केवल एसक्यूएल वाक्य रचना (PHP के बिना) का उपयोग कर mysql तालिका में ब्लॉब में छवियों को सम्मिलित करने के लिए?

  2. MySQL विजुअल स्टूडियो 2015 आपके पास पहले से प्रयोग करने योग्य कनेक्शन है

  3. PHP का उपयोग करके .pdf फ़ाइलों को MySQL में BLOB के रूप में कैसे स्टोर करें?

  4. अजीब SQLException:कॉलम नहीं मिला

  5. mysql CONCAT () नाम के रूप में?