--1.統計指定行的乘積:EXP(SUM(LOG(字段)))
IF OBJECT_ID('tempdb.dbo.#a') IS NOT NULL DROP TABLE #a
CREATE TABLE #a(i INT ,j FLOAT)
INSERT #a VALUES(1,1.23)
INSERT #a VALUES(1,0.59)
INSERT #a VALUES(1,0.94)
INSERT #a VALUES(2,1.02)
INSERT #a VALUES(2,0.63)
INSERT #a VALUES(3,0.98)
SELECT *FROM #a
SELECT i,EXP(SUM(LOG(J))) FROM #a GROUP BY i
--2.沒有自增列的情況下去除重複項
IF OBJECT_ID('tempdb.dbo.#RepeatData') IS NOT NULL DROP TABLE #RepeatData
CREATE TABLE #RepeatData(a INT,b INT ,c INT,d INT ,e VARCHAR(100),f VARCHAR(100))
INSERT #RepeatData SELECT 1,2,3,4,'中國','深圳'
INSERT #RepeatData SELECT 1,2,3,4,'中國','深圳'
INSERT #RepeatData SELECT 1,2,3,4,'中國','北京'
INSERT #RepeatData SELECT 1,2,3,4,'中國','北京'
INSERT #RepeatData SELECT 1,2,3,4,'中國','上海'
INSERT #RepeatData SELECT 1,2,3,4,'中國','上海'
;with tt as(
select *,ROW_NUMBER()over(PARTITION BY a,b,c,d,e,f ORDER by f)num from #RepeatData
)
delete tt where num>1
SELECT *FROM #RepeatData
--3.按字符串大小寫模糊匹配
select * from 表 where 字段 collate chinese_prc_cs_as_ws like 'A%' (查大寫 )
select * from 表 where 字段 collate chinese_prc_cs_as_ws like 'a%' (查小寫 )
--4.數據轉換時,想要去掉Float到Varchar的科學計數法,用Cast轉換兩次即可。Float--->>Decimal--->>Varchar
declare @aa varchar(50)
set @aa='6.22345e+16'
select Convert(numeric,Convert(float,@aa))
select cast(cast(字段 as decimal(18,0)) as varchar)
--5.大表分批刪除SQL腳本
WHILE 1=1
BEGIN
DELETE TOP (5000) FROM TB
WHERE SYSDATE <= '2013-12-31'
IF @@ROWCOUNT < 5000
BREAK;
WAITFOR DELAY '00:00:01'
END
--6.根據月份返回英文對應前綴
SELECT SubString('JanFebMarAprMayJunJulAugSepOctNovDec',Month(GETDATE())*3-2,3)
SELECT case Month(GETDATE()) when 1 then 'Jan' when 2 then 'Feb' when 3 then 'Mar'
when 4 then 'Apr' when 5 then 'May' when 6 then 'Jun' when 7 then 'Jul' when 8 then 'Aug'
when 9 then 'Sep' when 10 then 'Oct' when 11 then 'Nov' when 12 then 'Dec' else 'No' END
--7.存儲過程執行結果字段不固定情況下插入數據到臨時表
IF OBJECT_ID('tempdb.dbo.#UR_ResultData') IS NOT NULL DROP TABLE #UR_ResultData
SELECT * INTO #UR_ResultData FROM OPENROWSET('SQLNCLI', '鏈接服務器地址';'用戶名';'密碼', '
SET NOCOUNT ON;SET FMTONLY OFF;
EXEC 存儲過程名
@整型參數1 = 整型值,
@字符串參數2 =''字符串值''
')
SQL Server日常總結生僻小技巧 10個可能有八個平時都沒用到過
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.