首页 > 其他分享 >处理字符串_8_判断字符串含有汉字

处理字符串_8_判断字符串含有汉字

时间:2023-02-20 16:31:46浏览次数:45  
标签:UNION 含有 汉字 ALLSELECT LENGTH SQL 字符串 data SELECT


                           判断字符串含有汉字

需求描述

需求:检索含有汉字的字符串.

解决方法:这里通过函数CHAR_LENGTH对比LENGTH进行对比来判断.

注: 数据库数据集SQL脚本详见如下链接地址

​​员工表结构和数据初始化SQL脚本​​

SQL代码

--Mysql:
SELECT data,LENGTH(data) AS Len_data,CHAR_LENGTH(data) AS CharLen_Data,HEX(data) AS HexData FROM
(
SELECT 'Hello,World,SQL' AS data
UNION ALL
SELECT 'Data,Arithmetic' AS data
UNION ALL
SELECT 'Science中国' AS data
UNION ALL
SELECT '上S海H' AS data
)A
WHERE LENGTH(data)<> CHAR_LENGTH(data)

执行结果

处理字符串_8_判断字符串含有汉字_Data

/*
注:
LENGTH() returns the length of the string measured in bytes.
CHAR_LENGTH() returns the length of the string measured in characters.
LENGTH:是计算字节的长度.一个汉字是算三个字符,一个数字或字母算一个字符
CHAR_LENGTH:汉字、数字、字母都算是一个字符*/

-- 或者通过字符串的十六进制并结合REGEXP来判断.
SELECT data,HEX(data) AS HexData FROM
(
SELECT 'Hello,World,SQL' AS data
UNION ALL
SELECT 'Data,Arithmetic' AS data
UNION ALL
SELECT 'Science中国' AS data
UNION ALL
SELECT '上S海H' AS data
)A
WHERE HEX(data) REGEXP '^(..)*(E[4-9])'

处理字符串_8_判断字符串含有汉字_Data_02

--SQL Server:
SELECT data FROM
(
SELECT 'Hello,World,SQL' AS data
UNION ALL
SELECT 'Data,Arithmetic' AS data
UNION ALL
SELECT 'Science中国' AS data
UNION ALL
SELECT '上S海H' AS data
)A
WHERE data LIKE '%[吖-座]%'

--或者利用PATINDEX函数进行判断

SELECT data FROM
(
SELECT 'Hello,World,SQL' AS data
UNION ALL
SELECT 'Data,Arithmetic' AS data
UNION ALL
SELECT 'Science中国' AS data
UNION ALL
SELECT '上S海H' AS data
)A
WHERE PATINDEX('%[吖-座]%',data) > 0

处理字符串_8_判断字符串含有汉字_数据库_03

标签:UNION,含有,汉字,ALLSELECT,LENGTH,SQL,字符串,data,SELECT
From: https://blog.51cto.com/u_15080860/6068722

相关文章

  • 判断⼀个字符串中出现次数最多的字符,统计这个次数
    //找出⼀个字符串中出现次数最多的字符,并统计出现的次数//"ababajshbaasdaaaa"=>{char:'a',count:9} varstr="ababajshbaasdaaaa"functioncomputeStr......
  • 算法之字符串
    字符串字符串--反转字符串题目:力扣题目链接(opensnewwindow)编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组char[]的形式给出。不要给另外的......
  • java 判断字符串是否为空的四种方法
    以下是java判断字符串是否为空的四种方法:方法一:最多人使用的一个方法,直观,方便,但效率很低:if(s==null||s.equals(""));方法二:比较字符串长度,效率高,是我......
  • Java面试宝典_君哥讲解笔记02 描述JDK、JRE、JVM之间的关系、如果main方法声明成priva
    系列文章目录文章目录​​系列文章目录​​​​java基础面试题​​​​请描述JDK、JRE、JVM之间的关系​​​​如果main方法被声明成private会怎么样呢?​​​​&和&&区别在......
  • java如何用split()分割字符串
    String.split()分割字符串的总结:1.字符"|","*","+"都得加上转义字符,前面加上"\\"。2.而如果是"\",那么就得写成"\\\\"。3.如果一个字符串中有多个分隔符,可以用"|"作为连字......
  • Es6 新增的字符串方法
    1.String.fromCodePoint()ES5提供String.fromCharCode()方法,用于从Unicode码点返回对应字符,但是这个方法不能识别码点大于0xFFFF的字符。String.fromCharCode(0x2......
  • 字符串变量初始化
    importre#解析字符串中全局变量并进行替换defresolve_global_var(pre_resolve_var,global_var_dic,global_var_regex='\${.*?}',match2key_s......
  • 对称美学,对称字符串
    时间限制:1s空间限制:256MB限定语言:不限题目描述:对称就是最大的美学,现有一道关于对称字符串的美学。已知:第1个字符串:R第2个字符串:BR第3个字符串:RBBR第4个字......
  • 指针和字符串基础知识
    #include"stdafx.h"intmain(intargc,char*argv[]){//定义字符串的第一种方式,此种定义的字符可修改chara[]="it";a[0]='T';printf("%s\n",a);//定义字......
  • C字符串基础
    #include<string.h>#include<stdio.h>intmain(){charname[]="mhm";charname2[]={'1','2'};printf("%s\n",name);//mhmprintf(......