この問題の解決方法はインターネットで調べていますが、探しているものを正確に見つけることができません。優先度の高い複数の列に対して最小集計関数を使用するクエリ
私たちはこのようになりますテーブルを持っていることを言うことができます:
_____________________________________________________
| id (PK) | name | date | ... other data ... |
-----------------------------------------------------
| 1 | BOB | 2016-11-20 | ....
--------------------------------
| 3 | CARL | 2015-09-02 | ....
--------------------------------
| 4 | BOB | 2016-11-18 | ....
--------------------------------
| 5 | JON | 2016-03-03 | ....
--------------------------------
| 6 | TIM | 2016-11-24 | ....
--------------------------------
| 7 | TIM | 2016-11-24 | ....
--------------------------------
| 8 | JON | 2016-05-05 | ....
--------------------------------
私はその意志のクエリ必要があります。それぞれの
1.リターン名前の明確なリスト(個別の機能)
2.名前は最も早い日付(分の関数)を持っています
3.上記の2つの列になるID。
4.日付が同じであれば、そうこの場合、所望の結果は次のようになり
を選択するために、どの行を決定するための方法として分(ID)を使用し..
_____________________________________________________
| id (PK) | name | date | ... other data ... |
-----------------------------------------------------
| 3 | CARL | 2015-09-02 | ....
--------------------------------
| 4 | BOB | 2016-11-18 | ....
--------------------------------
| 5 | JON | 2016-03-03 | ....
--------------------------------
| 6 | TIM | 2016-11-24 | ....
--------------------------------
ありスクリプトを使用して一時テーブルを作成してループする必要なく、効率的にクエリを実行する方法がありますか?
これは私が道の半分を取得:
を明確な(名)、分(日付)、...他のデータをSELECT ... TABLE1
から、私はIDに分関数を適用する場合それは私が必要とするように行動しません。 BOBの場合は、2行をミックスし、 'id'の場合は1、日付の場合は '2016-11-18'を返します。これは完全に間違っています。
何か助けてください。