ホームページ > データベース > mysql チュートリアル > データセット内の各一意の ID の最大信号値を見つける方法は?

データセット内の各一意の ID の最大信号値を見つける方法は?

DDD
リリース: 2025-01-06 13:10:38
オリジナル
156 人が閲覧しました

How to Find the Maximum Signal Value for Each Unique ID in a Dataset?

一意の ID の最大信号値の取得

特定のデータセット内の各一意の ID の最大信号値を決定するには、次のことができます。自己結合操作を伴う次のアプローチを採用します。

SELECT cur.id, cur.signal, cur.station, cur.ownerid
FROM yourtable cur
WHERE NOT EXISTS (
    SELECT *
    FROM yourtable high
    WHERE high.id = cur.id AND high.signal > cur.signal
)
ログイン後にコピー

このクエリは機能します。テーブルをそれ自体 (別名 cur および high で表される) と結合し、より高い信号値が存在する行をフィルターで除外します。結果は、最も高い信号値を持つ個別の ID ごとに、ID、信号値、ステーション、所有者 ID を含む行のリストです。

提供されているサンプル テーブルのコンテキストでは、次のようになります。

ID     Signal    Station    OwnerID
111     -120      Home       1
111     -130      Car        1
111     -135      Work       2
222     -98       Home       2
222     -95       Work       1
222     -103      Work       2
ログイン後にコピー

クエリを実行すると次の結果が得られます:

ID    Signal    Station    OwnerID
111   -120      Home        1
222   -95       Work        1
ログイン後にコピー

このテーブルには一意の ID ごとの最大信号値が含まれており、元の問題を効果的に解決できます。不必要なデータ集約や追加のテーブル結合の必要性。

以上がデータセット内の各一意の ID の最大信号値を見つける方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート