喜悦国际村 » 数据库技术 » 求助--数据库部分升序排列,部分降序排列..

页: [1]
baros_php2007-2-13 08:09 AM
求助--数据库部分升序排列,部分降序排列..

如果有100条记录,总的排列是升序, 而前五十条,则降序排列.
请问,各位高手,给条这样的sql语句, 小弟在这先谢谢拉!
非常的急啊!我试过好多的写法,都不对啊!

isno2007-2-23 02:16 PM
汗  我是菜鸟也不会
  帮顶

zghzgh2007-2-27 08:24 AM
select * from table order by date Desc limit 0,5 and Esc limit 6,100;
试试

jtql4202007-2-28 03:04 AM
試試union

sanders_yao2007-3-1 09:03 PM
这种问题我一般会将他们都按升序查询出来
然后用php取出前50条降序排列

seakingx2007-3-7 09:38 AM
mysql> select * from f2;
+----+------+----------+-------+
| id | cid  | name     | title |
+----+------+----------+-------+
|  1 |    1 | php      | dddd  |
|  2 |    1 | asp      | dddd  |
|  3 |    1 | jsp      | dddd  |
|  4 |    2 | ibm      | aaa   |
|  5 |    2 | dell     | aaa   |
|  6 |    2 | hp       | aaa   |
|  7 |    1 | cgi      | cccc  |
|  8 |    3 | harddisk | eee   |
|  9 |    3 | mouse    | eee   |
| 10 |    4 | car      | eee   |
+----+------+----------+-------+
10 rows in set (0.00 sec)


mysql> select * from f2 limit 0,5
    -> union all
    -> select * from (
    -> select * from f2 where id >
    -> (select max(id) from (select * from f2 limit 0,5) A )
    -> order by id desc
    -> ) B
    -> ;
+----+------+----------+-------+
| id | cid  | name     | title |
+----+------+----------+-------+
|  1 |    1 | php      | dddd  |
|  2 |    1 | asp      | dddd  |
|  3 |    1 | jsp      | dddd  |
|  4 |    2 | ibm      | aaa   |
|  5 |    2 | dell     | aaa   |
| 10 |    4 | car      | eee   |
|  9 |    3 | mouse    | eee   |
|  8 |    3 | harddisk | eee   |
|  7 |    1 | cgi      | cccc  |
|  6 |    2 | hp       | aaa   |
+----+------+----------+-------+
10 rows in set (0.01 sec)

seakingx2007-3-7 09:41 AM
mysql> select * from (
    -> select * from (
    -> select * from f2 limit 0,5
    -> ) C order by id desc )D
    -> union all
    -> select * from (
    -> select * from f2 where id >
    -> (select max(id) from (select * from f2 limit 0,5) A )
    -> order by id
    -> ) B;
+----+------+----------+-------+
| id | cid  | name     | title |
+----+------+----------+-------+
|  5 |    2 | dell     | aaa   |
|  4 |    2 | ibm      | aaa   |
|  3 |    1 | jsp      | dddd  |
|  2 |    1 | asp      | dddd  |
|  1 |    1 | php      | dddd  |
|  6 |    2 | hp       | aaa   |
|  7 |    1 | cgi      | cccc  |
|  8 |    3 | harddisk | eee   |
|  9 |    3 | mouse    | eee   |
| 10 |    4 | car      | eee   |
+----+------+----------+-------+
10 rows in set (0.00 sec)

这个是前5条降序,其余升序

seakingx2007-3-7 09:43 AM
以上语句是在mysql 5.0 完成的,只是为了完成需求, 语句没优化...


查看完整版本: 求助--数据库部分升序排列,部分降序排列..


Powered by Discuz! Archiver 6.1.0  © 2001-2006 Comsenz Inc.
Processed in 0.012377 second(s), 2 queries