select * from (select name,describe from table order by lengthb(describe) desc) where rownum<=1;
如果没有汉字,也可以用 length 代替 lengthb

解决方案 »

  1.   

    boydgmx(梦霄),可是如果describe为NULL,此时查出来的就是这条NULL值的记录,然后才显示字数最多的记录,请问如何修改?谢谢
      

  2.   

    select * from table where describe=(select max(length(describe)) from table)
      

  3.   

    如果不希望看到NULL的话,可以在子查询中屏蔽NULL
    select * from (select name,describe from table where describe is not null order by lengthb(describe) desc) where rownum<=1;
      

  4.   

    上面那个可以控制看到多少行,如果只需要知道最大行的话,这样写效率更高一些:
    select * from table where lengthb(describe)=(select max(lengthb(describe)) from table);