作者chweng ()
看板Database
标题[SQL ] 如何取出最新几笔资料 并且以 asc 排序
时间Thu Mar 6 09:02:28 2008
请问在不知道资料数共有几笔的情况下,
如何取出最新的 n 笔资料,并且根据某栏位以 ASC 排序?
查了 select、asc / desc、order by `some_field`、limit、offset 等用法,
还是兜不出我想要的结果…
举个实际的例子,请先用以下语法建立测试用 table:
CREATE TABLE IF NOT EXISTS `test` (
`index` int(4) NOT NULL,
`name` varchar(4) default NULL,
PRIMARY KEY (`index`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `test` (`index`, `name`) VALUES
(0, '小明'),
(1, '小美'),
(2, '小华'),
(3, '阿猫'),
(4, '阿狗');
如果以这样的语法:SELECT * FROM `test` ORDER BY `index` DESC LIMIT 2
是可以取到最新的两笔资料没错,可是顺序错了。
如果是这样:SELECT * FROM `test` ORDER BY `index` ASC LIMIT 2
则会取得小明、小美两笔资料…
我想问的是,如何取得阿猫和阿狗这两笔,而且顺序是阿猫、阿狗这样的?
谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.127.236.131
※ 编辑: chweng 来自: 59.127.236.131 (03/06 09:03)
1F:推 appleboy46:MYSQL -> Limit 5 order by xxx asc 03/06 12:19
※ 编辑: chweng 来自: 59.127.236.131 (03/06 13:58)