複数の条件を持つ MySQL クエリ メソッド

複数の条件を持つ MySQL クエリ メソッド

複数の条件を持つ MySQL クエリ

環境: MySQL 5.7

where ステートメントに複数の and または or が出現する場合は、複数の OR を括弧で囲んで AND と結合するか、複数の AND を括弧で囲んで OR と結合する必要があります。

mysql 多対多条件クエリ

2つのテーブルuserとrole、真ん中のテーブルはuser_role

ユーザーとロールの対応関係を照会する

res.user_name、r.role_name を (u.user_name、ur.role_id を user として u から選択し、user_role を ur として u.user_id=ur.user_id として内部結合します) を res として選択します 
INNER JOIN role as r where res.role_id=r.role_id;

同じフィールドで複数の条件を見つけるための MySQL クエリ

分析:

1. まず、学生番号01が学んでいるコースを調べます

sc から C を選択 S='01' 

2. 関連するコースの学生数を照会する

scからSを選択 WHERE C in 
(sc から C を選択、S = '01' の場合) 

ご覧のとおり、3 回クエリを実行したため、複数の結果があります。 or 関係であるため、コース 1、2、3 を選択したすべての学生が取得されます。

3. 3回出現する数字を取り出す必要があります

scからSを選択 WHERE C in 
(sc から C を選択、S = '01' の場合) 
GROUP BY S HAVING COUNT(S) = 3 

1、2、3、4番の生徒が01番の生徒と同じコースを選択したことがわかりました。

4. 学生テーブルとの結合クエリを実行して関連情報を取得します。

a.* を選択
学生A LEFT JOIN sc b
aS = bSの場合、bSは(
scからSを選択 WHERE C in 
(sc から C を選択、S = '01' の場合) 
GROUP BY S HAVING COUNT(S) =3)
GROUP BY aS 

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQLクエリ条件のnot inとinの違いと理由
  • MySQL 完全崩壊: クエリフィルタ条件の詳細な説明
  • MySQL 条件付きクエリと使用法および優先順位の例の分析
  • Mysqlクエリ条件で文字列の末尾にスペースがあっても一致しない問題の詳細な説明
  • MySQLクエリ条件の一般的な使用法の詳細な説明
  • インデックスは MySQL クエリ条件で使用されますか?

<<:  フレームセットの共通プロパティ(フレームとウィンドウの分割)

>>:  ウェブ開発で遭遇した問題と経験

推薦する

Docker-Composeコマンドの使い方の詳しい説明

Docker コンテナはさまざまな方法で管理およびデプロイできます。 Docker コマンドを直接使...

LNMP と phpMyAdmin を Docker にデプロイする方法

環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...

Apache ポートに基づいて仮想ホストを作成する例

apache: ポートに基づいて仮想ホストを作成する仮想ホスト(a、b、c)の作成を例に挙げます1)...

Redis イメージの Docker インストールと設定手順

目次序文環境インストールMySQLコンテナを作成して起動する落とし穴を避けるための注意MySQLコン...

計算機機能を実現するjsバージョン

この記事の例では、計算機機能を実装するためのjsの具体的なコードを参考までに共有しています。具体的な...

画像にマウスを置いたときにズームイン/ズームアウトするには JS を使用します

マウスが画像上にあるときにズームインおよびズームアウトするには、JS を使用します。具体的なコードは...

テーブルの幅を固定して、テキストによって幅が変わらないように設定

ページ内のテーブルの幅を width="600px" に設定した後も、幅が固定さ...

ウェブ開発で遭遇した問題と経験

<br />以下は開発中に遭遇した問題と、そこから得た経験です。デバッグに時間がかかりま...

値の転送を実現するために、2つの同じレベルのコンポーネントをVueで作成します。

Vue コンポーネントは接続されているため、コンポーネント間で値を渡す必要があるのは避けられません...

いくつかの一般的な CSS レイアウト (要約)

まとめこの記事では、次の一般的なレイアウトを紹介します。 3 列レイアウトを実装する方法は多数ありま...

MySQL 5.7 のルートパスワードログイン問題の解決策

前回の記事でMySQLサービスが起動しない問題が解決したと分かった後、パスワードなしでrootユーザ...

JavaScript はスローモーションアニメーションのカプセル化と使用法を説明します

プロセス分析の実装(1)繰り返して電話をかけるには?答え: 関数をカプセル化して一度だけ呼び出すコー...

Linux SSHポートを転送する3つの方法

ssh は私が最も頻繁に使用する 2 つのコマンドライン ツールのうちの 1 つです (もう 1 つ...

CSS3 列を使用したカード ウォーターフォール レイアウトを実装するためのサンプル コード

この記事では、カード ウォーターフォール レイアウトを実現するための CSS3 列のサンプル コード...

HTML ページ出力で従うべきいくつかの原則の要約

1. DOCTYPE は必須です。ブラウザは宣言した DOCTYPE に基づいてページのレンダリング...