找出sql中列的最大字符串

时间:2014-05-09 09:29:56

标签: mysql sql

我正在尝试在sql中执行查询以查找行列中的最大字符串。我需要从列中输出最大的字符串。

发现像这样的人:

  • 数据库是carfind
  • 表格是carads
  • 列是IMAGE1

    select IMAGE1
    from carads
    where len(IMAGE1) =(select max(len(IMAGE1))from carads)
    

但我得到错误:

#1305 - FUNCTION carfind.len does not exist

4 个答案:

答案 0 :(得分:3)

len不是MySQL函数。大概你的意思是字符的长度,在这种情况下你可以使用CHAR_LENGTH。即。

SELECT IMAGE1 FROM carads ORDER BY CHAR_LENGTH(IMAGE1) DESC LIMIT 1;

或者以字节为单位使用LENGTH

SELECT IMAGE1 FROM carads ORDER BY LENGTH(IMAGE1) DESC LIMIT 1;

答案 1 :(得分:2)

为MySQL尝试LENGTH而不是LEN。

答案 2 :(得分:1)

在MySQL LEN()工作中,它被称为LENGTH()

select IMAGE1
from carads
where LENGTH(IMAGE1) =(select max(LENGTH(IMAGE1))from carads)

使用ORDER BY / LIMIT 1将只提供一个值,以返回字符串长度等于表中使用MAX()的最大长度的所有值,如上所述

答案 3 :(得分:1)