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

Oracle SQL - स्तंभ में पिवट तालिका पंक्तियाँ और पिवट में उप क्वेरी का उपयोग करें

केवल सशर्त एकत्रीकरण का उपयोग करें:

SELECT COALESCE(customer, 'Grand Total') as customer,
       SUM(CASE WHEN Hotel = 'Royal Palms' THEN 1 ELSE 0 END) as "Royal Palms",
       SUM(CASE WHEN Hotel = 'Beverly Hills' THEN 1 ELSE 0 END) as "Beverly Hills",       
       SUM(CASE WHEN Hotel = 'Ritz-Carlton' THEN 1 ELSE 0 END) as "Ritz-Carlton" ,
       COUNT(*) as "Grand Total",
       COUNT(Booked_Status) as "Num Booked"
FROM CUST_HOTEL_VIEW
GROUP BY ROLLUP(CUSTOMER)
ORDER BY CUSTOMER;

सशर्त एकत्रीकरण pivot . से कहीं अधिक लचीला है . व्यक्तिगत रूप से, मुझे pivot . का कोई कारण नहीं दिखता वाक्य रचना:यह एक काम अच्छी तरह से करता है, लेकिन एक बिल्डिंग ब्लॉक नहीं है जिस तरह से परंपरा एसक्यूएल स्टेटमेंट हैं।

ROLLUP() भी काफी मददगार है। आप इसका भी उपयोग कर सकते हैं:

GROUP BY GROUPING SETS ( (CUSTOMER), () )


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. BLOB और CLOB की व्याख्या

  2. oci_parse का वापसी मूल्य

  3. वेब साइट डाउन और ट्विटर फीड

  4. JDBC के साथ Oracle डेटाबेस से जुड़ने के लिए URL स्ट्रिंग प्रारूप

  5. Oracle से SQL सर्वर माइग्रेशन करने के बाद मैंने अपना SysDB डेटाबेस खो दिया। मैं इसे फिर से कैसे बना सकता हूं?