
group byで特定のカラムをまとめる際に、最後(最新)のレコードを抽出したいのですが
最初(古い)の行が抽出されてしまいます。
例えば、threadカラムとuptimeカラムがあるテーブルBBSで
threadカラムをgroup byでまとめる際にuptimeの降順(desc)でまとめたい場合
どのようにしたらいいでしょうか?
【テーブルBBS】
id thread uptime
1 1 1230100000
2 2 1230200000
3 1 1230300000
4 3 1230400000
5 1 1230500000
6 2 1230600000
select * form bbs group by thread order by uptime desc
だと
thread uptime
3 1230400000
1 1230300000
2 1230200000
になってしまいます。
次のような結果を表示するにはどのようにしたらいいでしょうか。
thread uptime
2 1230600000
1 1230500000
3 1230400000
また、DISTINCTを使うと同じフィールド内に重複したレコードがある場合は最初のレコードのみ表示されますが、最後のレコードのみ表示するにはどのようにすればいいのでしょうか?
よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
単にthread毎にまとめた最大のuptimeをとるだけですよね?
select thread,max(uptime) as uptime form bbs group by thread order by uptime desc
これにidの情報がほしいということだと、サブクエリが必要になります
No.1
- 回答日時:
明示的に
select thread,uptime
from ( select thread,max(uptime) as uptime from bbs group by thread )
order by uptime desc
と書けばいいのでは。
> また、DISTINCTを使うと同じフィールド内に重複したレコードがある場合
> は最初のレコードのみ表示されますが、最後のレコードのみ表示するには
> どのようにすればいいのでしょうか?
これは具体的にはどんな現象でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- PHP PHP MySql ページング 2 2022/09/20 06:38
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- PostgreSQL PostgreSQL レコードからアイテム種類数を取得したい 2 2022/11/23 22:31
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- MySQL 共通点はあります。何が違うのでしょうか? 1 2023/01/27 05:22
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
group byで最後のレコードを抽...
-
[MySQL]LOAD DATA INFILE一部レ...
-
テーブルの列数を調べたい
-
MYSQLで小数点を表示する場合と...
-
時間範囲が重複したレコードを...
-
年月日のうち月日だけ取得したい。
-
MySQL 改行コードを含む文字列...
-
DBの定義のサイズを大きくし過...
-
SELECT文で、指定カラム以外の...
-
INDIRECT関数の代替方法は?
-
一部のカラムでdistinctし全て...
-
SQLでカラムを追加し、条件に合...
-
MYSQLで全てのカラムから検索す...
-
DB2のBLOB型カラムに格納された...
-
MySQLで論理名を取得する方法
-
連番を振る インデックス 付...
-
特殊な選択をWHEREで選択するに...
-
mySQL文でわかりません。
-
LIKEは類似一致検索なのでしょ...
-
重複を除いた結果が欲しい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テーブルの列数を調べたい
-
同一日に複数レコードがある場...
-
group byで最後のレコードを抽...
-
[MySQL]LOAD DATA INFILE一部レ...
-
MySQL 改行コードを含む文字列...
-
MYSQLで小数点を表示する場合と...
-
select * での表示が崩れる?
-
MySQL AUTO_INCREMENTが最大に...
-
WHEREなどの条件が多い場合、ど...
-
フレンドリストのようなものを...
-
betweenを使うyyyy/mm/ddでの範...
-
[MYSQL]日付のカラムにデーター...
-
時間範囲が重複したレコードを...
-
VB.NETでSQL-SERVERにクエリを...
-
MySQLについて
-
MySQLでカラム内の値の先頭の数...
-
mysqlで年と月を別々のカラムに...
-
whereの使い方が分からないので...
-
データベースについて
-
MySQL テーブルの一部のカラム...
おすすめ情報