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

SQL Server 2000 का उपयोग करके पिवट करें

मुझे एहसास है कि यह दो साल पुराना है, लेकिन यह मुझे परेशान करता है कि स्वीकृत उत्तर गतिशील एसक्यूएल का उपयोग करने के लिए कहता है और सबसे ऊपर उठाया गया उत्तर काम नहीं करेगा:

Select P.ProductId, P.Name
    , Min( Case When PM.MetaKey = 'A' Then PM.MetaValue End ) As A
    , Min( Case When PM.MetaKey = 'B' Then PM.MetaValue End ) As B
    , Min( Case When PM.MetaKey = 'C' Then PM.MetaValue End ) As C
From Products As P
        Join ProductMeta As PM
            On PM.ProductId = P.ProductId
Group By P.ProductId, P.Name

आपको जरूरी ग्रुप बाय का उपयोग करें या आपको एक चौंका देने वाला परिणाम मिलेगा। यदि आप ग्रुप बाय का उपयोग कर रहे हैं, तो आपको प्रत्येक कॉलम को रैप करना होगा जो ग्रुप बाय क्लॉज में एक समग्र फ़ंक्शन (या एक सबक्वेरी) में नहीं है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. तालिका के लिए स्तंभ जानकारी प्राप्त करें या SQL सर्वर में देखें (T-SQL:sp_columns)

  2. सप्ताह की शुरुआत तिथि और सप्ताह की समाप्ति तिथि सप्ताह संख्या से प्राप्त करें

  3. SQL सर्वर में किसी ऑब्जेक्ट की आईडी उसके नाम से प्राप्त करें:OBJECT_ID ()

  4. SQL सर्वर में डेटाबेस में सभी तालिकाओं के लिए कॉलम विवरण जोड़ें कैसे उत्पन्न करें - SQL सर्वर / टी-एसक्यूएल ट्यूटोरियल भाग 49

  5. SQL सर्वर 2017 में एक डेटाबेस को पुनर्स्थापित करें