小5聊Sql Server基础之IF ELSE的使用,以及len和substringconvert函数的使用

Posted 小5聊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小5聊Sql Server基础之IF ELSE的使用,以及len和substringconvert函数的使用相关的知识,希望对你有一定的参考价值。

如果有经常使用触发器或者写存储过程的同学,那么一定不会少用判断语句if_else

假如有一个需求,就是通过语句的方式添加一条记录,添加记录前需要判断当前文本的前60%的文本不能有所重复,其实就是判断某个字段文本不能重复的需求

1、 len函数

select len('美人鱼最怕遇到谁?')*0.3

2、convert函数

默认情况下,是不会四舍五入的 

select convert(int,len('美人鱼最怕遇到谁?')*0.3)

 

 3、substring函数

select '%'+substring('美人鱼最怕遇到谁?',1,convert(int,len('美人鱼最怕遇到谁?')*0.3))+'%'
select '%'+substring('美人鱼最怕遇到谁?',1,len('美人鱼最怕遇到谁?')*0.3)+'%'

 4、if_else使用

  •  查看测试效果

  •  判断语句,添加失败效果

  •  判断语句,添加成功效果
declare @num int --定义变量
declare @question varchar(800) --定义变量
declare @answer varchar(100) --定义变量
set @question='美人鱼最怕遇到谁?'
set @answer ='加菲猫'
select @num=count(1) from dati_list where question like '%'+substring(@question,0,len(@question)*0.6)+'%'

if(@num>0) --存在记录则不添加记录
	begin
	  print '添加失败,记录已存在'
	end
else --不存在记录,可添加
	begin
		insert into dati_list(datiGuid,question,answer,datiType,datiTypeText,addTime,updateTime)
		values(newid(),
		@question,
		@answer,
        '101','脑筋急转弯',getdate(),getdate());
	  print '添加成功';
	end

以上是关于小5聊Sql Server基础之IF ELSE的使用,以及len和substringconvert函数的使用的主要内容,如果未能解决你的问题,请参考以下文章

小5聊Sql Server基础使用之SHOWPLAN permission denied in database

小5聊Sql Server基础之统计库龄语句,仅作为语句使用

小5聊Sql Server基础之insert into select从一个表添加到另一个表

小5聊Sql Server 2019数据库之清空服务器登录名下拉方法

小5聊Html基础之通过for循环和if相结合的方式实现1万内的完全平方数

小5聊C#基础之Ajax的getpost与Request.Form的判断