hi

It is not working,

select * from table_name group by movid having max(movid)

but it is working fine

select * from table_name order by movid desc limit 1





________________________________
From: Roland Kaber <[email protected]>
To: armando <[email protected]>
Cc: tech list <[email protected]>; [email protected]
Sent: Sat, 6 February, 2010 8:28:06 PM
Subject: Re: max() can't work

The max() function is an aggregate function which can be used in 
conjunction with GROUP BY in the SELECT or HAVING clause: 
http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html . This 
code should work:
select * from table_name group by movid having max(movid).

However, there is a simpler and more efficient solution:
select * from table_name order by movid desc limit 1.

I hope this helps.

Best regards
Roland Kaber

armando wrote:
> the field "movid" is type integer or varchar ?
>
>
> 2010/2/6 tech list <[email protected]>
>
>  
>> select * from table_name where movid = max(movid);
>>
>> why the sql above can't work?
>> Shall I use a sub-select instead?
>>
>> select * from table_name where movid = (select max(movid) from table_name)
>> ?
>>
>>
>> Thanks in advance.
>>
>> --
>> MySQL General Mailing List
>> For list archives: http://lists.mysql.com/mysql
>> To unsubscribe:    http://lists.mysql.com/[email protected]
>>
>>
>>    
>
>
>  



      The INTERNET now has a personality. YOURS! See your Yahoo! Homepage. 
http://in.yahoo.com/

Reply via email to