[TSQL]在SELECT DISTINCT 狀況下使用 Order BY Newid() 亂數選出

在日常作業中,有時候可能是一些活動要抽出得獎人或選出抽查的一些名單,
就常常會使用到 Order BY Newid() 的方式來做亂數選出,
但有可能的狀況需是要搭配到 DISTINCT 來選出,這時候如 DISTINCT 與 Order By Newid()
同時使用就會遇到錯誤訊息「如果已指定 SELECT DISTINCT,則 ORDER BY 項目必須顯示於選取清單中」。

...繼續閱讀 »

[TSQL]解決資料表內資料重複問題

1.先找出重複的資料有哪些,重複多少筆
2.給予整個資料表一個 IDENTITY ,用來區分出既使資料重複,也有一個欄位不同。
3.再將有重複的資料排序好厚新增到暫存的資料表
4.透過 DELETE 指令,以暫存的資料表的serial(剛剛建立出來的Identity)取餘數的方式就能找到唯一的serial 來Delete重複的資料。
詳細請看下面之前寫下來的說明,野人獻曝,還請大家多多指教。

...繼續閱讀 »

[TSQL]模擬 SELECT FROM Stored Procedure

今天剛好朋友問,有一個 Stored Procedure ,必須透過 TSQL 取得他裡面的資料後,
再加以處理,自己測了一下,好像沒辦法直接 SELECT * FROM Stored Procedure ,
就先用資料表變數 加上 EXEC 方式取出資料,加以處理。
方法硬了點,還請大家有更不錯的方法,請指教一下。

...繼續閱讀 »