摘要:
create function dbo.getsexBysfzh(@s varchar(18)) returns VARCHAR(10)as begin return( case (case len(@s) when 15 then substring(@s,15,1) --这里是最后一位 when 18 then substring(@s,17,1) --这里是倒数第二 end)%2 when 1 then 0 else 1 --返回1是男,0是女 end )endgo 阅读全文
摘要:
-- =============================================-- Description:<判断18位身份证号是否正确,返回结果对应如下:>-- -1:位数不正确-- 0:位数正确,但证号不合法-- 1:位数正确,且证号合法-- =============================================createFUNCTION [dbo].[f_check18sfzh](@ID18 varchar(30)--要校验的证号)RETURNS intASBEGIN DECLARE @ID15 varchar(30),@S18 int 阅读全文
摘要:
-- =============================================-- Description:<判断身份证号是否合法,返回结果对应如下:>-- -2:含有非法字符-- -1:位数不正确(不为15或18位)-- 0:位数正确,但证号不合法-- 1:位数正确,且证号合法-- =============================================createFUNCTION [dbo].[f_checksfzh](@ID varchar(30)--要校验的证号)RETURNS intASBEGIN DECLARE @ID15 varch 阅读全文
摘要:
CREATE function [dbo].[fsplit](@SourceSql varchar(8000),@StrSeprate varchar(10))returns @temp table(a varchar(100))--实现split功能 的函数as begindeclare @i intset @SourceSql=rtrim(ltrim(@SourceSql))set @i=charindex(@StrSeprate,@SourceSql)while @i>=1begininsert @temp values(left(@SourceSql,@i-1))set @Sou 阅读全文
摘要:
有时候,在数据库中需要显示主表信息另加对应字表部分字段信息,且子表字段信息需用特定字符拼接起来显示,在这种情况下,可这样实现,以下为","实例:create FUNCTION [dbo].[f_Getxx](@sID varchar(50))RETURNS nvarchar(4000)ASBEGINdeclare @sText nvarchar(4000) SELECT @sText=isnull(@sText+',','')+字段+',' FROMA,B WHERE 条件 return isnull(substring(@s 阅读全文
摘要:
微软从SQl2005起引入了CTE(Common Table Expression)以强化T-SQL。这是一个类似于非持久视图的好东东。cte语法:[WITH<CTE_definition>[,...n]] <SELECT,INSERT,UPDATE,orDELETEstatementthat callstheCTEs> <CTE_definition>::= CTE_name[(column_name[,...n])] AS ( CTE_query )按照MSDN介绍1、公用表表达式 (CTE) 可以认为是在单个 SELECT、INSERT、UPDATE、 阅读全文