mysql は GROUP BY グループ化を使用して最初の N レコードをフェッチするメソッドを実装します_MySQL
この記事の例では、mysql が GROUP BY グループ化を使用して最初の N レコードを取得する方法を説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
MySQL の GROUP BY グループ化は、最初の N レコードを取得することによって実装されます
mysql のグループ化、レコードの取得
GROUP BY の後の各グループの最初の 2 桁を取得する方法 次に、mysql で GROUP BY グループ化の最初の N レコードを取得する方法を説明します。
これはテストテーブルです(何を考えたかわかりませんが、そのときテーブル名にaaと入力しました、汗~~~~):
結果:
方法 1:
コードは次のとおりです:
SELECT a.id,a.SName,a.ClsNo,a.Score FROM aa a LEFT JOIN aa b ON a.ClsNo=b.ClsNo AND a.Score
分解分析:
1、 LEFT JOIN aa b ON a.ClsNo=b.ClsNo AND a.Score 同じクラス (各クラスに 4 人の生徒) で、現在の生徒よりも高いスコアの記録は、最も低いスコアの生徒が 3 つの記録を持つことを意味します 2. count(b を持つ a.id,a.SName,a.ClsNo,a.Score によるグループ化) .id)
a.id、a.SName、a.ClsNo、a.Score は学生 (学生ごとにグループ化) を表すことができ、count(b.id)
方法 2: コードは次のとおりです。 SELECT * FROM aa a WHERE 2>(SELECT COUNT(*) FROM aa WHERE ClsNo=a.ClsNo and Score>a.Score) ORDER BY a.ClsNo,a.Score DESC; 方法 3: コードは次のとおりです: SELECT * FROM aa WHERE id IN (SELECT id FROM aa WHERE ClsNo=a.ClsNo ORDER BY Score DESC LIMIT 2) ORDER BY a.ClsNo,a.Score DESC; さらに MySQL 関連のコンテンツに興味のある読者は、このサイトの特別トピックをチェックしてください: 「完全な MySQL ログ操作スキル」、「MySQL トランザクション操作スキルの概要」、「完全な MySQL ストアド プロシージャ スキル」、「MySQL の概要」データベースロック関連スキル』と『MySQLでよく使う関数のまとめ』 この記事が皆さんの MySQL データベース計画に役立つことを願っています。
これはさらに興味深いと思います。各記録を取得して、同じクラス内に現在の生徒よりも高い成績を持つ生徒が 2 人未満いるかどうかを判断します。
このメソッドはテストに合格できませんでした。エラー 1235 (42000): このバージョンの MySQL はまだ「LIMIT & IN/ALL/ANY/SOME サブクエリ」をサポートしていません。これらのサブクエリでは制限を使用できません。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

MySQL 8.4 (2024 年時点の最新の LTS リリース) で導入された主な変更の 1 つは、「MySQL Native Password」プラグインがデフォルトで有効ではなくなったことです。さらに、MySQL 9.0 ではこのプラグインが完全に削除されています。 この変更は PHP および他のアプリに影響します

PHP には、MySQL テーブル内のデータを削除する次のメソッドが用意されています。 DELETE ステートメント: テーブルから条件に一致する行を削除するために使用されます。 TRUNCATETABLE ステートメント: 自動インクリメントされる ID を含む、テーブル内のすべてのデータをクリアするために使用されます。実際のケース: HTML フォームと PHP コードを使用して、データベースからユーザーを削除できます。フォームはユーザー ID を送信し、PHP コードは DELETE ステートメントを使用して ID に一致するレコードを users テーブルから削除します。

PHPがMySQLに接続した後、ページは空白になり、DIE()関数が失敗する理由。 PHPとMySQLデータベースの間の接続を学習するとき、あなたはしばしばいくつかの混乱することに遭遇します...

多くのウェブサイト開発者は、ランプアーキテクチャの下でnode.jsまたはPythonサービスを統合する問題に直面しています:既存のランプ(Linux Apache MySQL PHP)アーキテクチャWebサイトのニーズ...

PCとモバイル側で同じページを共有し、キャッシュの問題を処理する方法は? Nginxでは、Baotaの背景を使用して構築されたPHP MySQL環境、PCサイドの作成方法と...

この記事のPHPの楽観的ロックおよびトランザクションと組み合わせて残高を控除する問題の詳細な説明では、PHP、楽観的ロック、データベーストランザクションのみを使用したバランス控除を詳細に分析します...

Redis データベースを効果的に監視することは、最適なパフォーマンスを維持し、潜在的なボトルネックを特定し、システム全体の信頼性を確保するために不可欠です。 Redis Exporter Service は、Prometheus を使用して Redis データベースを監視するように設計された堅牢なユーティリティです。 このチュートリアルでは、Redis Exporter Service の完全なセットアップと構成について説明し、監視ソリューションをシームレスに確立できるようにします。このチュートリアルに従うことで、Redis データベースのパフォーマンス メトリクスを効果的に監視するための完全に運用可能な監視セットアップを実現できます。
