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

Как да избера ред с променлива в SQL Server?

ДЕМО

използвайте unpivot и след това се присъединете към вашата таблица с елементи.

WITH cte as (
    SELECT [Year], [Model], [Price]
    FROM (SELECT [Year], [MODELA], [MODELB], [MODELC], [MODELD]
          FROM pricing) p
    UNPIVOT 
        ([Price] FOR [Model] IN 
                     ([MODELA], [MODELB], [MODELC], [MODELD])
        ) as unpvt
) 
SELECT i.*, c.price
FROM cte c
JOIN items i 
  ON c.[Year] = i.[Year]
 AND c.[Model] = i.[model]

ИЗХОД



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Съответствие с GDPR и вашият SQL сървър

  2. Извличане/избиране на стойности от множество редове в 1 единствен ред в sql сървър

  3. Скриптирайте всички данни от базата данни на SQL Server

  4. T-SQL Skip Take Stored Procedure

  5. Грешка при конвертиране на типове данни при импортиране от Excel в SQL Server 2008