PHP+mySQLで、DBからある順序で情報を取り出す方法(SELECT ORDER BY)で困っています。
●テーブル情報
create table sample (
no int NOT NULL auto_increment,
data varchar(16),
time timestamp NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (no)
);
●動作結果
INSERT INTO sample (data) VALUE ("***")
no data time
------------------------------
1 "test1" 2012-05-02 17:26:03
2 "test2" 2012-05-02 17:26:03
3 "test3" 2012-05-02 17:28:26
4 "test4" 2012-05-03 13:30:42
●質問事項
上記DBからdataを以下の順序で取り出したいのですが、よい方法が思いつきません。
条件1) 時刻(time)の新しい順
条件2) 時刻(time)が同じであれば、noの小さい順
「動作結果」の場合、下の順序で取り出しできることが期待値です。
no data time
------------------------------
4 "test4" 2012-05-03 13:30:42
1 "test1" 2012-05-02 17:26:03
2 "test2" 2012-05-02 17:26:03
3 "test3" 2012-05-02 17:28:26
これをmySQLの文法だけでなんとかできないかというのが質問です。
たとえば以下の方法だと、期待値となりません。
SELECT data FROM sample ORDER BY time DESC, no
no data time
------------------------------
4 "test4" 2012-05-03 13:30:42
1 "test1" 2012-05-02 17:26:03
2 "test2" 2012-05-02 17:26:03
3 "test3" 2012-05-02 17:28:26
よろしくお願いいたします。