2014-09-01 53 views
0

我從中反過來我跟值從使用SQL關鍵字另一個表進行比較,一表「除」如何在使用數據檢索函數的SQL中保存數據?

retreiving值我的查詢看起來像如下

SELECT DISTINCT TDC_TREE_FAMILY_CLASSIFICATION AS DPC_Level1, 
       TDC_TREE_CLASSIFICATION AS DPC_Level2, 
       TDC_TREE_SUB_CLASSIFICATION AS DPC_Level3 
       FROM TD_DATA_PACK_CONTENTS 
       EXCEPT 
SELECT DPC_Level1,DPC_Level2,DPC_Level3 FROM DATA_PACK_CATEGORIES 
ORDER BY DPC_Level1 

現在這個查詢工作正常。我想要做的是將結果保存在單個字符串變量中。

因此,我聲明3臨時變量來保存DPC_Level1,Lvl2,Lvl3的值,然後我可以將它們加入到單個字符串變量中。

所以我修改我的查詢是這樣的。

SELECT DISTINCT @m_DPC_Level11=TDC_TREE_FAMILY_CLASSIFICATION AS DPC_Level1 
       ,@m_DPC_Level2=TDC_TREE_CLASSIFICATION AS DPC_Level2, 
       ,@m_DPC_Level13=TDC_TREE_SUB_CLASSIFICATION AS DPC_Level3 
       FROM TD_DATA_PACK_CONTENTS 
       EXCEPT 
SELECT DPC_Level1,DPC_Level2,DPC_Level3 FROM DATA_PACK_CATEGORIES 
ORDER BY DPC_Level1 

但這引發錯誤

「一個值賦給變量不能與數據檢索操作結合 SELECT語句」。我如何解決這個問題。我使用SQL Server 2008

回答

1

我會去的子查詢

select @m_DPC_LEvel11 = DPC_Level1, 
     @m_DPC_Level2 = DPC_Level2, 
     @m_DPC_Level13 = DPC_Level3, 
FROM 
    (SELECT DISTINCT TDC_TREE_FAMILY_CLASSIFICATION AS DPC_Level1, 
       TDC_TREE_CLASSIFICATION AS DPC_Level2, 
       TDC_TREE_SUB_CLASSIFICATION AS DPC_Level3 
       FROM TD_DATA_PACK_CONTENTS 
       EXCEPT 
    SELECT DPC_Level1,DPC_Level2,DPC_Level3 FROM DATA_PACK_CATEGORIES 
    ORDER BY DPC_Level1) s 
相關問題