如何根据字段的字符长度过滤行

时间:2012-02-10 05:52:40

标签: mysql text

我有一个包含“id”和“description”列的表格。需要找到描述中包含超过100个字符的行吗?

编辑:现在得到了上述问题.. 但有没有办法得到字符数的计数?

3 个答案:

答案 0 :(得分:9)

使用char_length()字符串函数。

  

SELECT * FROM table WHERE char_length(description)> 100

点击此处查看更多信息 http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_char-length

答案 1 :(得分:6)

这是你要找的吗?

select * from table
where char_length(description) > 100

只是关于长度()的评论。实际上,我很懒,而且我会从官方文档中复制它:

  

Length(str):返回字符串str的长度,以字节为单位。多字节字符计为多个字节。这意味着对于包含五个双字节字符的字符串,LENGTH()返回10,而CHAR_LENGTH()返回5.

因此,length()不适合解决此问题。用户char_length()代替。

答案 2 :(得分:0)

虽然您应该为回复后的编辑创建一个单独的问题,但这里是如何获得描述超过100个字符的字符数的计数:

SELECT char_length(description) FROM table WHERE char_length(description) > 100