sql拆分字符串 + 字符串指定字符个数统计

    技术2025-12-19  13

    mysql字符串str 长度函数CHAR_LENGTH(str) 返回值为字符串str 的长度,长度的单位为字符。一个多字节字符算作一个单字符。对于一个包含五个二字节字符集, LENGTH()返回值为 10,而CHAR_LENGTH()的返回值为5。

    直接举个例子吧:(自己弄得数据)

     

    可以看到name是张三的work段里面包含、和汉字字符串

    先看一下length和CHAR_LENGTH 的区别:

    SELECT LENGTH(`work`) FROM stu

    SELECT CHAR_LENGTH(`work`) FROM stu

    从例子中可以直观的看出 LENGTH是计算字节长度,CHAR_LENGTH是计算字符长度

    如何计算出字符串指定字符个数统计需要用到replace替换数据中的、

    SELECT CHAR_LENGTH(`work`) - CHAR_LENGTH(replace(`work`, '、', ''))+1 FROM stu

    oracle 和mysql还是有区别的

    oracle的length是计算字符的长度,lengthb计算的是字节的长度

     

     

    注:oracle

    varchar2 与nvarchar2的区别

    1、对于英文字符:

      varchar2(6)可以最多存放6个字符

    2、对于中文字符:

      数据库字符集为UTF-8,varchar2(6) 最多存放2个字符

      数据库字符集为ZHS16GBK,varchar2(6) 最多存放3个字符

    3、不管是中文字符,还是英文字符,nvarchar2(6)都可以存放6个字符  

     

    Processed: 0.014, SQL: 9