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

एक कॉलम के विभिन्न मूल्यों के आधार पर अलग-अलग कॉलम के रूप में mysql तालिका में रिकॉर्ड की गणना करें

आप सही रास्ते पर थे, लेकिन गिनती को SUM(IF( )) में बदलें... कुछ इस तरह

select
      sum( if( s.job_search_text = 'a', 1, 0 ) ) as 'A',
      sum( if( s.job_search_text = 'b', 1, 0 ) ) as 'B',
      sum( if( s.job_search_text = 'c', 1, 0 ) ) as 'C',
      sum( if( s.job_search_text = 'd', 1, 0 ) ) as 'D',
      sum( if( s.job_search_text = 'e', 1, 0 ) ) as 'E',
      sum( if( s.job_search_text IN ( 'a', 'b', 'c', 'd', 'e' ), 0, 1 ) ) as 'Other'
   from 
      subscriber s

दूसरे के लिए "IN" परीक्षण, यदि यह कुछ ऐसा ढूंढता है जिसका पहले से ही हिसाब है, तो यह एक शून्य मान का योग है। यदि यह ए-ई प्रविष्टियों में से एक को ढूंढ नहीं पाता है, तो यह आपके लिए "अन्य" गणना को जोड़ देता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. विशिष्ट JSON प्रारूप के लिए SQL क्वेरी पैरेंट-चाइल्ड कैसे करें?

  2. MySQL गलत स्ट्रिंग मान त्रुटि फेंकता है

  3. Java.sql.SQLException को कैसे दूर करें:बहुत सारे कनेक्शन अपवाद?

  4. WHERE क्लॉज का उपयोग करके एकाधिक तालिकाओं के साथ MySQL अद्यतन सिंटैक्स

  5. क्वेरी परिणाम प्रदर्शित करने में समस्या