Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Sql конвертира данни в един ред от множество колони

Трябва да използвате PIVOT . Нещо като следното запитване би трябвало да помогне.

SELECT CustomerNumber, 
    CASE WHEN [1] > 0 THEN 'Y' ELSE 'N' END [Sony],
    CASE WHEN [2] > 0 THEN 'Y' ELSE 'N' END [LG],
    CASE WHEN [3] > 0 THEN 'Y' ELSE 'N' END [Samsung]
FROM
(SELECT Product1, CustomerNumber
    FROM Table) AS SourceTable
PIVOT
(
    COUNT(Product1)
    FOR Product1 IN ([1], [2], [3])
) AS PivotTable;



  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 Server 2017

  2. Изявлението е прекратено. Максималната рекурсия 100 е изчерпана преди завършването на оператора

  3. Как мога да извикам SQL съхранена процедура с помощта на EntityFramework 7 и Asp.Net 5

  4. Изпълнението на скрипта, направен от генериране на скрипт на различен сървър, дава грешка

  5. Как да форматирате числа като валута в SQL Server (T-SQL)