Stuff用法

Sql中Stuff作用

STUFF字符串函数是将字符串插入到另一个字符串中。它会删除开始位置第一个字符串中的指定长度的字符,然后将第二个字符串插入到开始位置的第一个字符串中

基本语法如下:

Stuff(character_expression,Start,Length,character_expression)
character_expression:是给定的字符串数据,可以是字符或二进制数据的常量,变量或列。
Start:参数是一个整数值,指定开始删除和插入的位置,可以是BIGINT类型。如果Start或Length参数为负数,则返回NULL字符串。如果Start参数比第一个character_expression长,则返回一个NULL字符串。
Length:参数可以是BIGINT类型,它是一个整数,指定要删除的字符数。
character_expression:如果Length比第一个character_expression长,则删除发生到最后一个character_expression中的最后一个字符。

示例

1)如上我们将身份证通过STUFF将最后四位用XXXX代替
DECLARE @CreditCardNumber VARCHAR(20)
SET @CreditCardNumber = ‘370200199408103544’
SELECT Stuff(@CreditCardNumber, Len(@CreditCardNumber) -3, 4,
‘XXXX’) AS [Output]

2)我们给定的字符串为@Time即1030,我们从第3个位置开始,删除长度为0,此时则在3前面插入冒号,并没有删除任何东西,结果如上图输出10:30。
DECLARE @Time VARCHAR(10)
SET @Time = ‘1030’
SELECT Stuff(@Time, 3, 0, ‘:’) AS [HH:MM]

3)CHARINDEX函数会在变量@FullName下标8找到空格,然后删到指定的下标并把变量@Alias插入
DECLARE @FullName VARCHAR(100)
DECLARE @Alias VARCHAR(20)
SET @FullName = ‘Jeffcky Wang’
SET @Alias = ’ “Superman” ’
SELECT Stuff(@FullName, CharIndex(’ ', @FullName), 1, @Alias) AS [FullName]

Sql Server (Stuff)(随手笔记)相关推荐

  1. SQL Server 数据库基础笔记分享(上)

    前言 本文是个人学习SQL Server 数据库时的以往笔记的整理,内容主要是对数据库的基本增删改查的SQL语句操作和约束,视图,存储过程,触发器的基本了解. 注:内容比较基础,适合入门者对SQL S ...

  2. SQL Server 2005 学习笔记系列文章

    列语句部分是Mssql语句,不可以在access中使用. SQL分类:  DDL-数据定义语言(CREATE,ALTER,DROP,DECLARE)  DML-数据操纵语言(SELECT,DELETE ...

  3. SQL SERVER 存储过程学习笔记 (转)

    将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令. 存储过程的优点 1. ...

  4. SQL Server 2005 学习笔记之触发器简介[转]

    触发器实际上就是一种特殊类型的存储过程,其特殊性表现在:它是在执行某些特定的T-SQL语句时自动的. 11.1  触发器简介 触发器实际上就是一种特殊类型的存储过程,它是在执行某些特定的T-SQL语句 ...

  5. SQL Server 2005学习笔记

    1.消除重复的行 select Distinct 字段名 from 表名 2.数据插入 INSERT [INTO] table_name [column_list] values (data_valu ...

  6. sql server 2008 学习笔记

    sql server 2008 删除已有的实例 想从setup.exe中区卸载,没找到. 原来还是要从控制面板中卸载,卸载Microsoft SQL Server 2008 卸载界面会提示让你选择要删 ...

  7. 【转】SQL SERVER 存储过程学习笔记

    原文地址:http://www.cnblogs.com/nina-piaoye/archive/2006/09/18/507183.html 将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的 ...

  8. sql server 2005学习笔记之触发器简介(一)

    触发器实际上就是一种特殊类型的存储过程,其特殊性表现在:它是在执行某些特定的T-SQL语句时自动的. 11.1  触发器简介 触发器实际上就是一种特殊类型的存储过程,它是在执行某些特定的T-SQL语句 ...

  9. SQL Server 2012学习笔记 (三) ----- SQL Server SQL语句

      在很多情况下,可以用CREATE TABLE语句创建数据表.使用ALTER TABLE语句修改表结构.使用DROP TABLE语句删除表:   可以使用CREATE DATABASE创建数据库.A ...

  10. SQL Server 2014安装笔记

    最近要部署一个项目,需要用到SQL Server 2014.我把安装过程简单记录一下,给有需要的朋友吧. 下载安装包 在国内微软的官网下载速度还是比较慢的,我是从 https://msdn.itell ...

最新文章

  1. 解决At least one JAR was scanned for TLDs yet contained no TLDs. 问题
  2. php和python写爬虫-python写爬虫方便还是php方便
  3. C++中class与struct的区别
  4. Android 安全机制概述
  5. 利用关系图表深度挖掘潜在决策影响关系——微软CRM炫酷介绍之四
  6. 硬件基础知识---(17)如何设计一个三极管放大电路
  7. 【Java】springboot的学习第二天
  8. 第三回 Bootstrap3.x 起步
  9. python面向对象是什么?面试技巧(三分钟读懂)
  10. 在ASP.NET Web API2中启用Cross-Origin请求
  11. L1- 017——024
  12. python聚类分析超市_Biopython聚类分析
  13. 数字图像处理(2): 颜色空间/模型—— RGB, CMY/CMYK, HSI, HSV, YUV
  14. layui上传文件请求接口异常_解决layui table表单提示数据接口请求异常的问题
  15. OGRE CG教程 (三): 渐隐效果
  16. flex:1 代表了什么意思
  17. poi 默认2位小数_Poi excel设置小数位数
  18. 重重事故下,区块链安全的难题与出路 |链捕手
  19. 用Unity3d开发Android游戏
  20. RFID资产管理系统解决方案

热门文章

  1. 【必知必会的MySQL知识】②使用MySQL
  2. 【Axure】实例:微信登录
  3. Maxio MAS0902A贴英特尔B16A颗粒速度测试
  4. 部署 php 项目,使用deployer 来部署PHP项目
  5. linux云服务器,内存占用率很高解决方法
  6. 线性代数(九) : 矩阵的行简化阶梯型和标准型
  7. 浅谈如何加强企业成本管理
  8. 【解决方案】webpack `Invalid Host/Origin header`问题
  9. futuretask java 并发请求_【Java并发】Runnable、Callable、Future、FutureTask
  10. 4 书写规则