如:我要找标题为5个字符的文章,怎么实现呢?
SELECT title FROM article WHERE title REGEXP '^.{5}$';这一句实现的效果不太好!中文字符不管用!
请各位指点!谢谢!

解决方案 »

  1.   

    utf8字符集,一个汉字3个字符,显示5个字符怎么搞?
    5/3个汉字..
    楼主想显示几个汉字?
      

  2.   

    mysql> SELECT * FROM article;
    +------+------------+
    | id   | title      |
    +------+------------+
    |    1 | .....      |
    |    2 | asdfg      |
    |    3 | asdqwe     |
    |    4 | 我我我我我           |
    |    5 | 我!?         |
    +------+------------+
    5 rows in set (0.01 sec)mysql> SELECT * FROM article WHERE title REGEXP '^.{5}$';你的这个没问题
    +------+-------+
    | id   | title |
    +------+-------+
    |    1 | ..... |
    |    2 | asdfg |
    |    5 | 我!?    |
    +------+-------+
    3 rows in set (0.00 sec)mysql> SELECT * FROM article WHERE convert(title using latin1) REGEXP '^.{5}$'
    +------+------------+
    | id   | title      |
    +------+------------+
    |    1 | .....      |
    |    2 | asdfg      |
    |    4 | 我我我我我           |
    +------+------------+
    3 rows in set (0.00 sec)
      

  3.   

    select    5 * 3 byte 长度的内容即可
      

  4.   

    关键要确定你的字符集设置是什么。否则无法正确判断。http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码
      

  5.   


    这一句很有用!谢谢!
    SELECT * FROM article WHERE convert(title using latin1) REGEXP '^.{5}$'
      

  6.   


    我是用的utf8的编码!
    老大文章不错哦!有时间拜读一下!