This sub-query will get the max length item - here's a test of it:

Code:
Declare @TestTbl Table (IdVal int, Descr varchar(100))
Insert into @TestTbl Values (1,'a')
Insert into @TestTbl Values (2,'ab')
Insert into @TestTbl Values (3,'abcd')
Insert into @TestTbl Values (4,'abc')
Insert into @TestTbl Values (5,'abcde')
Insert into @TestTbl Values (6,'abcdefg')
Insert into @TestTbl Values (7,'abcdef')
select * from @testtbl where len(descr)=(select max(len(descr)) from @testtbl)
returns...

Code:
IdVal       Descr                                                                                                
----------- ---------------------------------------------------------------------------------------------------- 
6           abcdefg

(1 row(s) affected)
You probably want it to be a "SELECT TOP 1" so that it won't ever return two rows (which sub-queries don't like!).