【Sql Server】基础之IF ELSE的使用,以及len和substring、convert函数的使用

简介: 如果有经常使用触发器或者写存储过程的同学,那么一定不会少用判断语句if_else假如有一个需求,就是通过语句的方式添加一条记录,添加记录前需要判断当前文本的前60%的文本不能有所重复,其实就是判断某个字段文本不能重复的需求
作者:小5聊基础
简介:一只喜欢全栈方向的程序员,欢迎咨询,尽绵薄之力答疑解惑
编程原则:Write Less Do More

1、 len函数

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

image.png

2、convert函数

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

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

image.png

3、substring函数

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

image.png

4、if_else使用

查看测试效果
image.png
判断语句,添加失败效果
image.png
判断语句,添加成功效果

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
相关文章
|
9月前
|
SQL 人工智能 数据挖掘
如何在`score`表中正确使用`COUNT`和`AVG`函数?SQL聚合函数COUNT与AVG使用指南
本文三桥君通过score表实例解析SQL聚合函数COUNT和AVG的常见用法。详解COUNT(studentNo)、COUNT(score)、COUNT()的区别,以及AVG函数对数值/字符型字段的不同处理,特别指出AVG()是无效语法。实战部分提供6个典型查询案例及结果,包含创建表、插入数据的完整SQL代码。产品专家三桥君强调正确理解函数特性(如空值处理、字段类型限制)对数据分析的重要性,帮助开发者避免常见误区,提升查询效率。
461 0
|
SQL Oracle 关系型数据库
SQL优化-使用联合索引和函数索引
在一次例行巡检中,发现一条使用 `to_char` 函数将日期转换为字符串的 SQL 语句 CPU 利用率很高。为了优化该语句,首先分析了 where 条件中各列的选择性,并创建了不同类型的索引,包括普通索引、函数索引和虚拟列索引。通过对比不同索引的执行计划,最终确定了使用复合索引(包含函数表达式)能够显著降低查询成本,提高执行效率。
342 3
|
SQL 数据库 数据库管理
数据库SQL函数应用技巧与方法
在数据库管理中,SQL函数是处理和分析数据的强大工具
|
SQL 数据库 索引
SQL中COUNT函数结合条件使用的技巧与方法
在SQL查询中,COUNT函数是一个非常常用的聚合函数,用于计算表中满足特定条件的记录数
2885 5
|
SQL 关系型数据库 MySQL
SQL日期函数
SQL日期函数
328 0
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
826 13
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
560 9
|
SQL 存储 网络安全
关系数据库SQLserver 安装 SQL Server
【7月更文挑战第26天】
360 6
|
SQL Oracle 关系型数据库
MySQL、SQL Server和Oracle数据库安装部署教程
数据库的安装部署教程因不同的数据库管理系统(DBMS)而异,以下将以MySQL、SQL Server和Oracle为例,分别概述其安装部署的基本步骤。请注意,由于软件版本和操作系统的不同,具体步骤可能会有所变化。
1401 3