Claire Lee wrote:
> This simplified my second expression in the if
> statement. Thank you. But the query still doesn't sort
> by the numbers, here's the result:
> 
> mysql> select distinct secname, date from optresult
> where secname like 'swap%' a
> nd date like '2005-09-2%' order by if (secname like
> 'swap%',abs(substring(secnam
> e,5)), secname);

SELECT
        DISTINCT secname
        , date
FROM
        optresult
WHERE
        secname LIKE 'swap%'
        AND
        date LIKE '2005-09-2%'
ORDER BY
        ABS(SUBSTRING(secname,5))

You don't need the IF in the ORDER BY -- that's already been
constrained by your WHERE ...

> +----------+------------+
> | secname  | date       |
> +----------+------------+
> | SWAP0.25 | 2005-09-21 |
> | SWAP0.5  | 2005-09-21 |
> | SWAP1    | 2005-09-21 |
> | SWAP10   | 2005-09-26 |
> | SWAP10   | 2005-09-23 |
> | SWAP10   | 2005-09-21 |
> | SWAP2    | 2005-09-26 |
> | SWAP2    | 2005-09-23 |
> | SWAP2    | 2005-09-22 |
> | SWAP2    | 2005-09-21 |
> | SWAP3    | 2005-09-21 |
> | SWAP3    | 2005-09-26 |
> | SWAP3    | 2005-09-23 |
> | SWAP3    | 2005-09-22 |
> | SWAP5    | 2005-09-21 |
> | SWAP5    | 2005-09-26 |
> | SWAP5    | 2005-09-23 |
> | SWAP5    | 2005-09-22 |
> +----------+------------+

HTH!
-- 
Hassan Schroeder ----------------------------- [EMAIL PROTECTED]
Webtuitive Design ===  (+1) 408-938-0567   === http://webtuitive.com

                          dream.  code.



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

Reply via email to