sql非聚合数据透视

sql非聚合数据透视,sql,pivot,Sql,Pivot,我的问题是: DECLARE @DynamicPivotQuery AS NVARCHAR(MAX) DECLARE @ColumnName AS NVARCHAR(MAX) --Get distinct values of the PIVOT Column SELECT @ColumnName= ISNULL(@ColumnName + ',','') + QUOTENAME(OzellikAdi) FROM (SELECT

我的问题是:

    DECLARE @DynamicPivotQuery AS NVARCHAR(MAX)
    DECLARE @ColumnName AS NVARCHAR(MAX)

    --Get distinct values of the PIVOT Column 

    SELECT @ColumnName= ISNULL(@ColumnName + ',','') 
           + QUOTENAME(OzellikAdi)
    FROM (SELECT DISTINCT OzellikAdi FROM KategoriDuzYazilar where KategoriId=6864) AS Courses
    print @ColumnName

    SET @DynamicPivotQuery = 
      N'Select * from(select i.IlanId,iduz.Deger,OzellikAdi from Ilan i
    join Kategori k on i.KategoriId=k.KategoriId
    join KategoriDuzYazilar kduz on kduz.KategoriId=k.KategoriId
    join IlanDuzYazilar iduz on iduz.IlanId=i.IlanId
    where i.KategoriId=6864
    )piv
    PIVOT (MAX(Deger) for OzellikAdi in(' + @ColumnName + ')) AS PVTTable'
              print @DynamicPivotQuery
              EXEC sp_executesql @DynamicPivotQuery
OzellikAdi是宜兰的财产,Deger是OzellikAdi的整数值和不同表格中的值

结果呢

IlanId  Ada No  Pafta No Parsel No
 426       9       9        9
 433       24      24       24
 434       210     210      210
 435       775     775      775
但是我不想累计,我必须得到这个结果

IlanId Ada No Pafta No Parsel No 426 5 7 9 433 13 16 24 434 210 114 5 435 775 0 45 IlanId Ada无Pafta无Parsel无 426 5 7 9 433 13 16 24 434 210 114 5 435 775 0 45 KategoriId是可变的

问题就在那一问题上

select i.IlanId,iduz.Deger,OzellikAdi from Ilan i
join Kategori k on i.KategoriId=k.KategoriId
join KategoriDuzYazilar kduz on kduz.KategoriId=k.KategoriId
join IlanDuzYazilar iduz on iduz.IlanId=i.IlanId 
and kduz.Id=iduz.KATEGORIDUZYAZILARID
where i.KategoriId=6864

您忘记设置IlanDuzYazilar和Kategoriduzilar表之间的关系了

如果您添加一些数据样本,或者在您的数据基础上构建,会更好。我如何仅筛选Ada no等于5?