mysql中如何查询中文字段

mysql中如何查询中文字段,第1张

直接用中文名称即可查询。

可按如下方法做测试:

1、创建表插入数据:

create table test

(序号 int,

名称 varchar(10))

insert into test values (1,'张三')

insert into test values (2,'李四')

2、执行查询:

select * from test where 序号=1

结果显示:

也就是说中文字段名在查询中可以直接引用。

SELECT * FROM `tableA` WHERE LENGTH(`row_name`)<>CHARACTER_LENGTH(`row_name`)

这样就能找出含有中文的记录了;如果查找全英文的记录,长度是相等的,把“<>”换成“=”就可以了,即

SELECT * FROM `tableA` WHERE LENGTH(`row_name`)=CHARACTER_LENGTH(`row_name`)

背景:用户表中的name存的是用户名字的拼音和中文。

需求:名字去除掉所有的中文字符。

解决方案:

通过CONVERT(name USING ASCII)把中文转换为?,然后再进行替换。

引申问题:怎么判断字段包含中文字符

方法1:查询CONVERT(name USING ASCII)转换为后有?的数据。

方法2:通过正则表达式查询,'[^ -~]'或'e[4-9][0-9a-f]{4}'或者'^(..)*(E[4-9])'表示含中文。

方法3:通过length()和char_length()返回值不同进行查询。

参考链接:

( https://blog.csdn.net/u012731379/article/details/64125572 )


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7380861.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存