1. nullif()
兩個特定的參數的值如果是相同的,則返回null,否則返回第一個值:
select nullif('a','b') = 'a'
select nullif('a','a') = null
2. NEWID() 生成GUID
SELECT NEWID() = '84249A2B-2A1D-4C89-BC92-2E8A028D5BB3'
3.COALESCE()函數
coalesce返回它的參數中第一個非空表達式
select coalesce(null,null,9,8,1,6,7)=9
使用三行代碼殺掉數據庫中的所有事務語句如下:
DECLARE @SQL VARCHAR(8000)
SELECT @SQL=COALESCE(@SQL,'')+'Kill '+CAST(spid AS VARCHAR(10))+ '; '
FROM sys.sysprocesses
WHERE DBID=DB_ID('AdventureWorks')
PRINT @SQL --EXEC(@SQL) Replace the print statement with exec to execute
4.rollup 子句
對列表的第一列進行小計和總計計算的最簡單方法,在假想例子中,除計算每個唯一的列值的總和以外,還需計算ID1列中的A和B行的總和
SELECT name,sex,sum(old) FROM test
GROUP BY name,sex
WITH rollup
fanfenghua man67
fanfenghua NULL67
lanyuzhen man
10
lanyuzhen woman23
lanyuzhen NULL33
NULL NULL
100
5. 錯誤函數
begin
try
select 5/0
end try
begin catch
print error_message()
end catch --(0 行受影響) 遇到以零作除數錯誤。
sqlserver系統函數
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.