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

Oracle SQL -- एकाधिक पंक्तियों से मान हथियाना

आप Oracle के किसी भी संस्करण में डेटा को इस तरह पिवट कर सकते हैं।

SELECT id,
       MAX( CASE WHEN key = 'name' THEN value ELSE null END ) name,
       MAX( CASE WHEN key = 'height' THEN value ELSE null END ) height,
       MAX( CASE WHEN key = 'awesomeness' THEN value ELSE null END ) awesomeness
  FROM facts
 WHERE id IN (1,2,3)
 GROUP BY id

यदि आप 11g का उपयोग कर रहे हैं, तो आप PVOT . का भी उपयोग कर सकते हैं ऑपरेटर।

यदि यह आपके डेटा मॉडल का प्रतिनिधि है, हालांकि, उस प्रकार का इकाई-विशेषता डेटा मॉडल आम तौर पर अक्षम होने वाला है। आमतौर पर आपको उस तालिका के साथ बेहतर सेवा दी जाती है जिसमें name . के लिए कॉलम होते हैं , height , awesomeness , आदि.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle:अंकगणितीय ऑपरेशन के परिणामस्वरूप अतिप्रवाह हुआ

  2. जावा से एसक्लप्लस स्क्रिप्ट चलाने का आसान तरीका

  3. XMLAgg/XMLElement का उपयोग करते समय बफ़र बहुत छोटी त्रुटि

  4. मैं डेटाबेस से एक्सएमएल (स्मृति समस्या) में बड़ी मात्रा में डेटा कैसे स्टोर कर सकता हूं?

  5. ऑरैकल में शून्य मानों के साथ योग कॉलम