sqlserver函數-九游会j9娱乐平台
ⅰ sqlserver常用函數
1、convert()
函數
?
1
convert(data_type(length),data_to_be_converted,style)
data_type(length)
規定目標數據類型(帶有可選的長度)。data_to_be_converted
含有需要轉換的值。style
規定日期/時間的輸出格式。
可以使用的
style
值:點擊打開鏈接
2、dateadd()
函數
點擊打開鏈接
3、cast()
函數
?
1
2
syntax
for
cast:
cast
(
expression
as
data_type
[
(
length
)
]
)
expression
任何有效的表達式。
data_type
目標數據類型。
這包括
xml、bigint
和
sql_variant。
不能使用別名數據類型。
length
指定目標數據類型長度的可選整數。
默認值為
30。
convert()
函數與cast()
函數詳細信息:點擊打開鏈接
ⅱ sqlserver函數的字元串函數
1 字元串函數
1.1 長度與分析用
datalength(char_expr) 返回字元串包含字元數,但不包含後面的空格
substring(expression,start,length) 不多說了,取子串
right(char_expr,int_expr) 返回字元串右邊int_expr個字元
1.2 字元操作類
upper(char_expr) 轉為大寫
lower(char_expr) 轉為小寫
space(int_expr) 生成int_expr個空格
replicate(char_expr,int_expr)復制字元串int_expr次
reverse(char_expr) 反轉字元串
stuff(char_expr1,start,length,char_expr2) 將字元串char_expr1中的從
start開始的length個字元用char_expr2代替
ltrim(char_expr) rtrim(char_expr) 取掉空格
ascii(char) char(ascii) 兩函數對應,取ascii碼,根據ascii碼取字元
1.3 字元串查找
charindex(char_expr,expression) 返回char_expr的起始位置
patindex(%pattern%,expression) 返回指定模式的起始位置,否則為0
ⅲ sqlserver 按范圍取值的函數
你可以試試case when,具體(case when sum(a)<=200 then 200 when sum(a)>=300 then 300 else b end) as b
ⅳ sqlserver函數的聚合函數
count()
返回組中的總條數,count(*)返回組中所有條數,包括null值和重復值項,如果抒寫表達式,則忽略空值,表達式為任意表達式。
max()
返回組中的最大值,空值將被忽略,表達式為數值表達式,字元串表達式,日期。
min()
返回組中的最小值,空值將被忽略,表達式為數值表達式,字元串表達式,日期。
sum()
返回組中所有值的和,空值將被忽略,表達式為數據表達式。
avg()
返回組中所有值的平均值,空值將被忽略,表達式為數據表達式。
ⅳ sqlserver函數的系統函數
newid 無參數
返回一個guid(全局唯一表示符)值
例如:select newid()
返回:2e6861ef-f4db-4ffe-86eb-637482fe982j2
isnumeric (任意表達式)
判斷表達式是否為數值類型或者是否可以轉換成數值。
是:返回1,不是:返回0
例如:select isnumeric(1111) 返回 1
select isnumeric('123rr') 返回 0
select isnumeric('123') 返回 1
isnull (任意表達式1,任意表達式2)
如果任意表達式1不為null,則返回它的值;否則,在將任意表達式2的類型轉換為任意表達式1的類型(如果這兩個類型不同)後,返回任意表達式2的值。
例如:select isnull(null,n'沒有值') 返回 沒有值
select isnull(n'具體的值',n'沒有值') 返回 具體的值
isdate (任意表達式)
確定輸入表達式是否為有效日期或可轉成有效的日期;
是:返回1,不是:返回0
例如:select isdate(getdate()) 返回1
select isdate('2013-01-02') 返回1
select isdate('198') 返回0
ⅵ sqlserver里用戶自定義函數寫在哪
drop function [dbo].[jzf_get_idno]
go
-- =============================================
-- author:
-- create date:
-- description:
-- =============================================
create function [dbo].[jzf_get_idno]
(
-- add the parameters for the function here
@apartid nvarchar(40)
)
returns nvarchar(40)
as
begin
-- declare the return variable here
declare @str nvarchar(40)
set @str=n'未查到'
-- add the t-sql statements to compute the return value here
select @str=isnull(idno,n'未定義') from mytable where objectid=@apartid
-- return the result of the function
return @str
---------------------結果顯示在,上述函數是標量值函數:
ⅶ sqlserver 函數的寫法
returns @rowset table(
id int identity(1,1) ,
score float,
lastscore float
)
你這里已經聲明了一個表格類型變數作為函數的返回值.
那麼只要在函數里對這個表進行賦值,就可以直接return
insert into @rowset values(...)
return
--------
declare @scorelist table (yscore float)
declare @scorelist1 table (lastscore float)
-------------------------------------------
怎麼我看你又聲明了兩個表格類型的變數?你函數聲明裡的返回類型是表,那麼單行返回的話就只能往裡裝簡單類型的值.
如果你要union拼接兩個table一起返回的話,兩個內部table和聲明的返回table定義又不一致.
很奇怪的寫法...能看出來你想干什麼...但這種寫法很怪異.
========================================補充
insert into @scorelist select...
insert into @scorelist1 select ...
你這不是把兩個查詢的結果賦給兩個內部變數了么,且這個表與你聲明的返回表都是一個float列.
你完全可以再把這兩個變數表insert 到@rowset啊,或者不用這倆變數表,直接在兩個查詢里向@rowset寫入值.
最後直接
return
end
不就行了?
======
http://hi..com/kas68310/blog/item/af4e05f0d5ee18c50a46e012.html
這有個返回值為talble的函數,你參看一下吧.你這個函數的完成度已經相當高了.
ⅷ sqlserver如何用sql語句自定義聚合函數
有兩個寫法:
select*fromtbldept
whereidin(
count(casewhensalary>3000then1elsenullend)*1.0/count(*)>0.5)
或
select*fromtbldept
whereidin(
sum(casewhensalary>3000then1else0end)*1.0/count(*)>0.5)
ⅸ sqlserver函數的數學函數
trunc(45.923,1) 按指定精度截斷十進制數 結果:45.9 此為oracle函數
mod(1600,300) 求除法余數 結果:100
abs(numeric_expr) 求絕對值
ceiling(numeric_expr) 取大於等於指定值的最小整數
avg(numeric_expr)取平均數
exp(float_expr) 取指數
floor(numeric_expr) 小於等於指定值得最大整數
pi() 3.1415926.........
power(numeric_expr,power) 返回power次方
rand([int_expr]) 隨機數產生器
round(numeric_expr,int_expr) 安int_expr規定的精度四捨五入
sign(int_expr) 根據正數,0,負數,,返回 1,0,-1
sqrt(float_expr) 平方根
ⅹ sqlserver 查看自定義函數
慘了,好像答非所問了。