Sql server 子选择查询

Sql server 子选择查询,sql-server,Sql Server,我正在尝试从一行中获取数据,并从数据中创建两个独立的列。我需要添加带有价格的列表,以及带有价格的perffered。我有一个perferred+价格和一个list+价格。我需要做一列标价和一列优惠价。使用子选择时出现错误。子查询返回的值超过1。当子查询在=、!=、=或者当子查询用作表达式时。我是SQL新手,需要帮助 谷歌和其他人 SELECT PriceListID + ' ' + CAST(Price1 AS VARCHAR(10)), (SELECT PriceList

我正在尝试从一行中获取数据,并从数据中创建两个独立的列。我需要添加带有价格的列表,以及带有价格的perffered。我有一个perferred+价格和一个list+价格。我需要做一列标价和一列优惠价。使用子选择时出现错误。子查询返回的值超过1。当子查询在=、!=、=或者当子查询用作表达式时。我是SQL新手,需要帮助

谷歌和其他人

SELECT 
    PriceListID + '   ' + CAST(Price1 AS VARCHAR(10)),
    (SELECT PriceListID + '   ' + CAST(Price1 AS VARCHAR(10))
     FROM Inprclst
     WHERE PriceListID = 'LIS')
FROM 
    Inprclst
WHERE 
    PriceListID = 'PRF'

这就是你想做的吗

SELECT MAX( CASE WHEN  PriceListID = 'PRF' THEN PriceListID + '   ' + CAST(Price1 AS VARCHAR(10)) END),
       MAX( CASE WHEN  PriceListID = 'LIS' THEN PriceListID + '   ' + CAST(Price1 AS VARCHAR(10)) END),
FROM Inprclst
WHERE PriceListID IN( 'PRF', 'LIS');

这就是你想做的吗

SELECT MAX( CASE WHEN  PriceListID = 'PRF' THEN PriceListID + '   ' + CAST(Price1 AS VARCHAR(10)) END),
       MAX( CASE WHEN  PriceListID = 'LIS' THEN PriceListID + '   ' + CAST(Price1 AS VARCHAR(10)) END),
FROM Inprclst
WHERE PriceListID IN( 'PRF', 'LIS');

请向我们展示一份您的数据样本和一份准确显示结果的样本。这将大大有助于我们为您提供帮助。请使用案例。[CASE When]()请向我们展示您的数据样本和结果样本。这将大大有助于我们为您提供帮助。请使用案例。[案例时]()