zoukankan      html  css  js  c++  java
  • Sql Server中REPLACE函数的使用

          在sql的使用过程当中,我们偶尔会遇到这样一种情况,就是需要改变数据的存储形式,比如数据库某一张表(Info)当中有一个字段Educational(学历),以前存储的是Json数组,现在由于需求的改变,我需要将数据的存储形式改成Json格式,这样我们就需要对数据进行替换,当数据量太大时,人工操作明显是不可取的,所以作者就找到了sql当中的REPLACE函数,下面分享一下我的个人体会。

    参考地址:http://technet.microsoft.com/en-us/library/ms186862.aspx  

    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字符串了。

  • 相关阅读:
    CCF认证201809-2买菜
    git删除本地保存的账号和密码
    mysql表分区
    使用java代码将时间戳和时间互相转换
    Mysql数据库表被锁定处理
    mysql查询某个数据库表的数量
    编译nginx错误:make[1]: *** [/pcre//Makefile] Error 127
    LINUX下安装pcre出现WARNING: 'aclocal-1.15' is missing on your system错误的解决办法
    linux下安装perl
    [剑指Offer]26-树的子结构
  • 原文地址:https://www.cnblogs.com/52XF/p/3740327.html
Copyright © 2011-2022 走看看