當做資料查詢時需要分組,因為只有一列不同,同時還需要保留不同的列,使其不能受到影響。這時用 distinct 和 group by 就不能解決問題了。
就需要用到臨時表來做到想要的結果。
//㈠先把稍後用到的臨時表從臨時資料庫中刪除。
if object_id('tempdb..#temp_table') is not null
begin
drop table #temp_table
end//㈡把從資料表中查出的資料放到臨時表中 。注意此處 identity 的使用 ,它是乙個自增的變數,可以為每一列分乙個由大到小的 int 型值 。
//因為用到了 order by 排序,因此在第三步時用 min()聚合函式就會取出需要的那條記錄。
select top 60 identity(int,1,1) id ,name, factoryname,catalogname,file_name,img2 into #temp_table
fromtablenameorder byview_count desc
//㈢在這就可以用 min(id) 聚合函式來取出結果集
select top 6 * from #temp_table where id in(
selectmin(id)from #temp_table group by factoryname )
插入資料到臨時表及去重複語句
原始表firsttable select identity int,1,1 as id,國內訂單表.crediteyesno,國內訂單表.客戶報告編號,case ch 主要財務比率.存貨周轉率 when 0 then null when null then null else ch 主要財務比率.存...
測試SQLServer拆分字串到臨時表
首先宣告,我是乙個菜鳥。一下文章中出現技術誤導情況蓋不負責 gocreate function dbo split sourcesql varchar max strseprate varchar 10 returns temp table line varchar max asbegin decl...
SqlServer中把結果集放到到臨時表的方法
一.select into 1.使用select into會自動生成臨時表,不需要事先建立 select into temp from sysobjects 01.把儲存過程結果集select into到臨時表 select from temp 2.如果當前會話中,已存在同名的臨時表 select ...