If I say:
select max(length(Name))
from my_table
I get the result as 18, but I want the concerned data also. So if I say:
s
In case you need both max and min from same table:
select * from (
(select city, length(city) as maxlen from station
order by maxlen desc limit 1)
union
(select city, length(city) as minlen from station
order by minlen,city limit 1))a;
SELECT name, LENGTH(name) AS mlen
FROM mytable
ORDER BY
mlen DESC
LIMIT 1
Use CHAR_LENGTH() instead-of LENGTH() as suggested in: MySQL - length() vs char_length()
SELECT name, CHAR_LENGTH(name) AS mlen FROM mytable ORDER BY mlen DESC LIMIT 1
Edited, will work for unknown max() values:
select name, length( name )
from my_table
where length( name ) = ( select max( length( name ) ) from my_table );
Select URColumnName From URTableName Where length(URColumnName ) IN
(Select max(length(URColumnName)) From URTableName);
This will give you the records in that particular column which has the maximum length.
I suppose you could use a solution such as this one :
select name, length(name)
from users
where id = (
select id
from users
order by length(name) desc
limit 1
);
Might not be the optimal solution, though... But seems to work.