Might need some type coercion:

SELECT    SUBSTRING(recid, 13, <column size>) AS numbers FROM table
 ORDER BY SUBSTRING(recid, 13, <column size>)+0  DESC

> -----Original Message-----
> From: Paul Halliday [mailto:paul.halli...@gmail.com]
> Sent: Tuesday, July 31, 2012 3:27 PM
> To: Haluk Karamete
> Cc: MySQL
> Subject: Re: query help
> 
> On Tue, Jul 31, 2012 at 7:02 PM, Haluk Karamete
> <halukkaram...@gmail.com> wrote:
> > I've got a text field called source_recid. It stores half string half
> > number like strings in it.
> >
> > Example
> >
> > shop.orders.32442
> >
> > the syntax is DATABASENAME.TABLENAME.RECID
> >
> > My goal is to scan this col and find out the biggest RECID ( the
> > integer) in it.
> >
> > So, in a case like this
> >
> > shop.orders.32442
> > shop.orders.82000
> > shop.orders.34442
> >
> > It would be the record whose source_recid  is shop.orders.82000. Why?
> > Cause
> > 82000 happens to be the largest integer.
> >
> > What SQL statement would get me that record?
> >
> > One option to this is to create a new column ( the_ids ) and move all
> > the integers in it and then run something like this
> >
> > select source_recid from mytable where source_recid like
> 'shop.orders.%'
> > order by the_ids DESC LIMIT 1
> >
> > Is there a way to pull this off without going thru this step?
> 
> Would substring work?
> 
> SELECT SUBSTRING(recid, 13, <column size>) AS numbers FROM table ORDER
> BY numbers DESC
> 
> 
> --
> Paul Halliday
> http://www.pintumbler.org/
> 
> --
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    http://lists.mysql.com/mysql


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/mysql

Reply via email to