私のテーブル構造Iは、日付(最長最初)に基づく各sub_typeの行をフェッチしたいMySQLのソートは異なる
id parent last_date sub_type
----------------------------------
11 9 2017-02-28 1101
10 9 2016-08-26 1101
8 1 2017-02-20 1101
12 12 2016-08-31 1102
14 12 2016-12-20 1102
9 9 2016-12-31 1101
13 12 2017-03-23 1102
2 1 2017-01-25 1101
1 1 2016-12-31 1101
を次のように。私は、クエリ
SELECT * FROM mytable GROUP BY sub_type ORDER BY ISNULL(last_date) DESC, last_date DESC
以下しようと、それは
id parent last_date sub_type
--------------------------------
1 1 2016-12-31 1101
12 12 2016-08-31 1102
を結果しかし、私は結果の下に期待しています。
id parent last_date sub_type
--------------------------------
13 12 2017-03-23 1102
11 9 2017-02-28 1101
上記の結果を得るために私を誘導してください。
EDIT:
LAST_DATEはNULL値に日付のエントリの上にいるだろう最高の優先順位を有することができます。 Thatswhy私はISNULL DESC注文を選択します。
'SELECT sub_type、MAX(last_date)FROM mytable GROUP BY sub_type'? –
'id'は主キーですか? –
複数のnullレコードが存在する場合はどうなりますか?どのレコードをフェッチしますか? @Forward。 – Blank