現有sql結果集乙個如圖1。我要得到另乙個結果集如圖2。具體下見詳情
此結果為虛擬,資料有n條,我要得到的結果集為:每個cid相同的裡面只要state=1的第一條資料。我現在的解決方案為
select cid from tab_taba group by cid.然後用迴圈拼接sql語句用union all拼接資料集。
select * from
(select top(1)* from tab_taba where cid= and state=0 order by createtime asc) as a0
union all
select * from (select top(1)* from tab_taba where cid= and state=0 order by createtime asc) as a1 ...........
但是資料多了後效率會很差
結論select t.* from tab_taba t,(
select min(id) as min_id from tab_taba where state=1 group by cid) t1
where t.id =t1.min_id
將乙個表的結果集插入到另乙個表中
舉例1 insert into table b time,score,totalscore select time,score,sum score over order bytime from table a 舉例2 insert into jobinfo analysis salary,addre...
儲存過程中呼叫另乙個儲存過程的結果集
在乙個儲存過程中把另乙個儲存過程當乙個表來使用,在sql server中不支援直接從 後接儲存過程。這個時候我們可以利用臨時表來實現。舉例 select id,roleid,roletype into temppurviewtablecontainer from systempurview wher...
傳入6個引數,返回乙個結果集
設計乙個procedure,接受6個引數,根據6個引數的組合,查詢出滿足條件的結果集。初學oracle,接受了多個引數後,不知道如何做引數組合後的輸出,只會寫傳入乙個引數時的情況 要求 例如,當用如下方式呼叫時 sql code begin market query null,10045 null,...