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

कॉलम के बजाय पंक्तिवार प्रारूप में रिटर्निंग क्वेरी

आप नीचे दी गई क्वेरी को आज़मा सकते हैं -

with X as (
  select 
    l.*,
    (select status_from from logs where logs.refno = l.refno and logs.logtime >= '2021-10-02' order by logs.logtime limit 1) logstat
  from listings l
  where l.added_date between '2021-10-01 00:00:00' and '2021-10-02 00:00:00'      -- Start and end date range.
)
, Y as (select X.*, ifnull(X.logstat, X.status) stat20211001 from X)
SELECT 
  added_date,
  COUNT(CASE WHEN status.text = 'Publish' THEN Y.id END) AS Publish,
  COUNT(CASE WHEN status.text = 'Action' THEN Y.id END) AS Action,
  COUNT(CASE WHEN status.text = 'Let' THEN Y.id END) AS Let,
  COUNT(CASE WHEN status.text = 'Sold' THEN Y.id END) AS Sold,
  COUNT(CASE WHEN status.text = 'Draft' THEN Y.id END) AS Draft
from status
join Y on Y.stat20211001 = status.code
group by added_date;

डेमो।




  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. ऑटो वृद्धिशील प्राथमिक कुंजी वाले MySQL में डेटा कैसे सम्मिलित करें?

  3. एक श्रेणी और उसके उपश्रेणियों से संबंधित सभी पदों की गणना

  4. एक ही मशीन पर चल रहे कई MySQL इंस्टेंस की निगरानी कैसे करें - ClusterControl टिप्स और ट्रिक्स

  5. MySQL - NULL सुरक्षित नहीं के बराबर ऑपरेटर