テーブル - テーブル 1
Table1
- フィールドが含まれています - (nid,date,profileid)
- データが含まれています (1,2012-12-1,12),(2,2013-5-12,12),(3,2012-10-10,13) ,(4,2013-1-20,13)
予想される出力 - すべての profileid の最新の日付に基づいて nid を選択します
最新の日付に基づいてテーブルから nid を選択できません profileid によるグループ化
テーブル - テーブル 1
Table1
- フィールドが含まれています - (nid,date,profileid)
- データが含まれています (1,2012-12-1,12),(2,2013-5-12,12),(3,2012-10-10,13) ,(4,2013-1-20,13)
予想される出力 - すべての profileid の最新の日付に基づいて nid を選択します
最新の日付に基づいてテーブルから nid を選択できません profileid によるグループ化
私はあなたがこのようなものが欲しいと信じています:
select
nid,
profileid
from Table1
group by profileid
having max(`date`)
もう少し正確な方法は、派生テーブルを使用して最大日付を取得し、目的のテーブルに結合することです。
select
Table1.nid,
Table1.profileid
from Table1
inner join (select profileid,
max(date) as maxdate
from Table1
group by profileid) derived on Table1.date = derived.maxdate
and Table1.profileid = derived.profileid
これのことですか?profileid で table1 グループから nid、max(date) を選択します