sql STUFF用法

sql STUFF用法

1、作用

删除指定长度的字符,并在指定的起点处插入另一组字符。

2、语法

STUFF ( character_expression , start , length ,character_expression )

3、示例

以下示例在第一个字符串 abcdef 中删除从第 2 个位置(字符 b)开始的三个字符,然后在删除的起始位置插入第二个字符串,从而创建并返回一个字符串

SELECT STUFF(‘abcdef‘, 2, 3, ‘ijklmn‘)
GO

下面是结果集

aijklmnef

4、参数
character_expression

一个字符数据表达式。character_expression 可以是常量、变量,也可以是字符列或二进制数据列。

start

一个整数值,指定删除和插入的开始位置。如果 start 或 length 为负,则返回空字符串。如果 start 比第一个 character_expression长,则返回空字符串。start 可以是 bigint 类型。

length

一个整数,指定要删除的字符数。如果 length 比第一个 character_expression长,则最多删除到最后一个 character_expression 中的最后一个字符。length 可以是 bigint 类型。

5、返回类型
如果 character_expression 是受支持的字符数据类型,则返回字符数据。如果 character_expression 是一个受支持的 binary 数据类型,则返回二进制数据。

6、备注
如果结果值大于返回类型支持的最大值,则产生错误。

时间: 2024-11-05 11:30:22

sql STUFF用法的相关文章

MySQL · 性能优化 · MySQL常见SQL错误用法

前言 MySQL在2016年仍然保持强劲的数据库流行度增长趋势.越来越多的客户将自己的应用建立在MySQL数据库之上,甚至是从Oracle迁移到MySQL上来.但也存在部分客户在使用MySQL数据库的过程中遇到一些比如响应时间慢,CPU打满等情况.阿里云RDS专家服务团队帮助云上客户解决过很多紧急问题.现将<ApsaraDB专家诊断报告>中出现的部分常见SQL问题总结如下,供大家参考. 常见SQL错误用法 1. LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方.比如

一直被用错的6种SQL 错误用法

一直被用错的6种SQL 错误用法 1.LIMIT 语句 2.隐式转换 3.关联更新.删除 4.EXISTS语句 5.条件下推 6.提前缩小范围 sql语句的执行顺序: FROM ON JOIN WHERE GROUP BY HAVING SELECTDISTINCT ORDER BY LIMIT 1.LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方.比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引.

[刘阳Java]_MyBatis_动态SQL标签用法_第7讲

1.MyBatis的动态SQL是基于OGNL表达式的,它可以帮助我们方便的在SQL语句中实现某些逻辑. 2.MyBatis中用于实现动态SQL的元素主要有 if choose(when,otherwise) trim where set foreach 可以看出MyBatis的动态SQL的标签元素和接近JSP中的JSTL语法,下面我就分别详细的介绍一下 3.动态SQL中if的用法 <?xml version="1.0" encoding="UTF-8" ?&g

sql join 用法

SQL JOIN 的用法 关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 --建表table1,table2:create table table1(id int,name varchar(10))create table table2(id int,score int)insert into table1 select 1,'lee'insert into table1 select 2,'zhang'insert into ta

sql case 用法总结

快下班了,抽点时间总结一下sql 的 case 用法. sql 里的case的作用: 用于计算条件列表的表达式,并返回可能的结果之一.sql 的case 类型于编程语言里的 if-esle if-else 或者 switch,但它不用于控制sql程序的执行流程,而是作为列的逻辑使用. 语法: case [input_expression] when when_expression then result_expression [...n] [else else_result_expression

spark sql 基本用法

一.通过结构化数据创建DataFrame: publicstaticvoid main(String[] args) {   SparkConf conf = new SparkConf() .setAppName("DataFrameCreate").setMaster("local"); JavaSparkContext sc = new JavaSparkContext(conf);        SQLContext sqlContext = new SQL

SSIS Execute SQL Task 用法

Execute Sql Task组件是一个非常有用的Control Flow Task,可以直接执行SQL语句,例如,可以执行数据更新命令(update,delete,insert),也可以执行select查询语句,返回结果集,结果集可以是一行,也可以是多行. 一,General 选项卡 1,返回结果集(Result Set) None:表示不返回结果,在执行Update,delete或insert命令时,使用该选项: Single row:返回单行结果,可以在Result Set 选项卡中,将

Oracle sql trace用法

sql_trace是oracle提供的一个非常好的跟踪工具,主要用来检查数据库的异常情况,通过跟踪数据库的活动,找到有问题的语句. 一.概述:    SQL_TRACE是Oracle的一个非常强大的工具.打开SQL_TRACE就可以逐步捕获任何一个会话的数据库活动,或者捕获整个数据库的活动,并将数据库活动记录成跟踪文件.每次使用完之后需要关闭跟踪,否则会降低系统的性能.    SQL_TRACE可以帮助诊断许多问题,其中包括: 二.用法:   1.文件跟踪的分类:      跟踪DBA可以采用两

mysql中时间计算函数SQL DATE_SUB()用法

本文为博主原创,未经允许不得转载: 在写sql的时候,经常要在sql中传值时间,对时间进行计算并过滤.之前都是将时间在后台计算好,直接传值给sql, 今天发现,有一个更方便的sql函数,可以简化很多代码.这个函数就是 DATE_SUB(). DATE_SUB 将从一个日期/时间值中减去一个时间值(时间间隔). 其函数中用法表达式为:DATE_SUB(date,INTERVAL expr type), type的参数可以为一下类型: MICROSECOND SECOND MINUTE HOUR D