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

टी-एसक्यूएल में एकाधिक कॉलम पिवट

MAX(CASE...) और GROUP BY का उपयोग करके फिर से लिखें:

select 
  field1
, [1] = max(case when RowID = 1 then field2 end)
, [2] = max(case when RowID = 2 then field2 end)
, [3] = max(case when RowID = 3 then field2 end)
, [4] = max(case when RowID = 4 then field2 end)
from (
  select 
    field1
  , field2
  , RowID = row_number() over (partition by field1 order by field2)
  from tblname
  ) SourceTable
group by 
  field1

वहां से आप field3, field4, आदि में जोड़ सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं MIN या MAX में शून्य मान कैसे शामिल कर सकता हूं?

  2. एसक्यूएल में शून्य त्रुटि से विभाजन से कैसे बचें?

  3. dtexec का उपयोग करके SSIS पैकेज चलाना

  4. एक्सेल डेट सीरियल नंबर को रेगुलर डेट में बदलें

  5. टी-एसक्यूएल डेटाटाइम फ़ंक्शन का उपयोग करने के साथ निकटतम मिनट और निकटतम घंटों तक गोल होता है