リレーショナルデータベースクラスでもっと注意を払っていたはずですので、何か助けが必要です。最新のレコードを選択するsession_id
私は似た構造のテーブルがそう(もっとありますが、私は唯一の関連情報を掲示しています)があります。
+------------------+-------------+------+-----+-------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------------+-------------+------+-----+-------------------+-------+
| session_id | char(32) | NO | | NULL | |
| file | varchar(30) | NO | | NULL | |
| access_time | timestamp | NO | | CURRENT_TIMESTAMP | |
+------------------+-------------+------+-----+-------------------+-------+`
私は各session_id
の最大のaccess_time
を持つレコードのfile
フィールドを選択します。各セッションで最後に訪れたページがかなりわかりました。
私はDISTINCTとGROUP BY句の無数の組み合わせを試しましたが、何らかの理由で私の頭を包んでいるように見えません。私はMySQLを使用しています。助けてください。
これは1つのsession_idに対してのみ行います。彼はそれぞれに尋ねた。 – MarkusQ
編集中でした.... – cjk
それはうまくいきました! (ちょっと微調整して)。ここで私が使用したクエリは次のとおりです。t1.session_id = t2.session_idのt2として、AS t1 joinテーブルからのt1.session_id、t1.access_time、t1.fileの選択(session_id、table_group_session_idによるaccess_timeとしてのsession_id、max(access_time)の選択) t1.access_time = t2.access_time; –