2015-12-28 81 views
0

我有一個表(度)是這樣的:如何查找記錄數量並更新另一個表格?

dID  dmID dlID d11 

540  1   1  44     
541  1   2  55     
542  1   3  66        
545  2   1  56     
546  2   2  76     
547  2   3  87         
550  3   1  55     
551  3   2  78     
552  3   3  87         
555  4   1  22     
556  4   2  22     
557  4   3  78  

我想找到多少D11 < 50每DMID 所以我用:

SELECT COUNT(*) FROM degrees 
WHERE degrees.[d11]<50 
    GROUP BY degrees.dmID 

這個結果:

COUNT(*) 

    1 
    2 

我的問題:如何將這些值更新到名爲midTable.Result的另一個表列中,其中midTable.[mid] = degrees.[dmID]

這是midTable結構:

mID Result 

1  null 
2  null 
3  null 

回答

1

的一種方法是使用一個相關子查詢:

update midTable 
    set Results = (select count(*) 
        from degrees d 
        where d.dmid = midTable.mid and d.d11 < 50 
       ); 

注意:這將設置不匹配的值,以0,這大概是打算查詢。

相關問題