表:MySQLの - IDの下で選択した行、列の値によってグループ最新のタイムスタンプを持ってい
----------------------------------------------------
ID | field_name | field_value | timestamp
----------------------------------------------------
2 | postcode | LS1 | 2016-11-09 16:45:15
2 | age | 34 | 2016-11-09 16:45:22
2 | job | Scientist | 2016-11-09 16:45:27
2 | age | 38 | 2016-11-09 16:46:40
7 | postcode | LS5 | 2016-11-09 16:47:05
7 | age | 24 | 2016-11-09 16:47:44
誰かが私にいくつかのポインタを与えることができれば、私は上記のデータに基づいて、疑問に思う、私はしたいと思いますID2でクエリを実行し、一意のフィールド名ごとに行を戻します(同じフィールド名を持つ同じIDの下に複数の行が存在する場合は、最新のタイムスタンプの行を返します)。
field_nameをグループ化することでほぼ達成できました。これは一意の行のリストを返しますが、必ずしも最新の行ではありません。
SELECT * FROM fragment WHERE (id = :id) GROUP BY field_name
私は本当に私はここで行う必要があり、まさに上の任意のポインタのために感謝されると、どのように私は、このクエリで
感謝をMAX(タイムスタンプ)の線に沿って何かを合うことができます!
おかげ例えば多くは、私は私のクエリにあなたのロジックを適用し、B(セット)の下で、私はまた私が欲しいIDを渡すためにWHEREを追加しました返すには、説明と追加の例のおかげで、私は確かにここでMySQLを使って作業していますが、非常に明確です。ありがとうございます。 –