Sql Server中REPLACE函数的使用
在sql的使用过程当中,我们偶尔会遇到这样一种情况,就是需要改变数据的存储形式,比如数据库某一张表(Info)当中有一个字段Educational(学历),以前存储的是Json数组,现在由于需求的改变,我需要将数据的存储形式改成Json格式,这样我们就需要对数据进行替
在sql的使用过程当中,我们偶尔会遇到这样一种情况,就是需要改变数据的存储形式,比如数据库某一张表(Info)当中有一个字段Educational(学历),以前存储的是Json数组,现在由于需求的改变,我需要将数据的存储形式改成Json格式,,这样我们就需要对数据进行替换,当数据量太大时,人工操作明显是不可取的,所以作者就找到了sql当中的REPLACE函数,下面分享一下我的个人体会。
REPLACE
用第三个表达式替换第一个字符串表达式中出现的所有第二个给定字符串表达式。
语法
REPLACE ( ''string_replace1'' , ''string_replace2'' , ''string_replace3'' )
参数
''string_replace1''
待搜索的字符串表达式。string_replace1 可以是字符数据或二进制数据。
''string_replace2''
待查找的字符串表达式。string_replace2 可以是字符数据或二进制数据。
''string_replace3''
替换用的字符串表达式。string_replace3 可以是字符数据或二进制数据。
返回类型
如果 string_replace(1、2 或 3)是支持的字符数据类型之一,则返回字符数据。
如果 string_replace(1、2 或 3)是支持的 binary 数据类型之一,则返回二进制数据。
示例
下例用 xxx 替换 abcdefghi 中的字符串 cde.
SELECT REPLACE(''abcdefghicde'',''cde'',''xxx'')GO
下面是结果集:
------------abxxxfghixxx(1 row(s) affected)
那么如何直接对数据进行修改呢?
首页,我们要实现的是对表中存储的数据进行修改,那么一定会有 Update,其次,我们需要把我们的数据进行替换,那么一定会有 REPLACE.
得出的sql语句如下:
update [Info] set [Educational] =(select REPLACE(REPLACE([Educational],'[',''),']',''))
执行以上的Sql语句,就会把表中存储的数据全部从Json数组变为Json字符串了。
推荐阅读
-
Sql Server中REPLACE函数的使用
-
Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试_javascript技巧
-
SQL Server客户端工具到底使用的是哪个provider呢?
-
JS中Date日期函数中的参数使用介绍_基础知识
-
详解PHP中的mb_detect_encoding函数使用方法_php技巧
-
php中字符串函数strtr, str_replace和preg_replace的效率对比
-
js中for循环内的匿名函数使用i的问题及解决方案
-
js中函数表示的声明、匿名函数的使用
-
MyBatis动态SQL中的trim标签的使用方法
-
Mybatis中动态SQL,if,where,foreach的使用教程详解