首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用SQL在MySQL数据库中查找中文短语的长度?

问如何用SQL在MySQL数据库中查找中文短语的长度?
EN

Stack Overflow用户
提问于 2012-11-27 14:48:49
回答 2查看 267关注 0票数 0

例如,这是我的表,名为example:

代码语言:javascript
复制
--------------------------
| id | en_word | zh_word |
--------------------------
| 1  | Internet| 互联网   |
--------------------------
| 2  | Hello   |   你好   |
--------------------------

and so on...

我尝试使用这个SQL查询:

代码语言:javascript
复制
SELECT * FROM `example` WHERE LENGTH(`zh_word`) = 3

由于某种原因,它不会给我三个字符,但会给我很多单字母字符。

为什么会这样呢?这个问题能解决吗?我在PhpMyAdmin中尝试了一下。

但是当我用JavaScript做这个的时候:

代码语言:javascript
复制
"互联网".length == 3; // true

而且它似乎工作得很好。那么为什么它不起作用呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-27 14:50:04

您应该使用CHAR_LENGTH而不是LENGTH

LENGTH()返回字符串的长度,以字节为单位。

CHAR_LENGTH()返回字符串的长度,以字符为单位。

票数 3
EN

Stack Overflow用户

发布于 2012-11-27 14:51:30

LENGTH返回以字节为单位的长度(中文为多字节)

使用CHAR_LENGTH获取以字符为单位的长度

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_char-length

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_length

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13578803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档