導入EXISTS は、サブクエリが少なくとも 1 行のデータを返すかどうかを確認するために使用されます。サブクエリは実際にはデータを返しませんが、True または False の値を返します。 EXISTS は、行の存在をテストするサブクエリを指定します。構文: EXISTS サブクエリ。サブクエリ パラメータは制限された SELECT ステートメントです (COMPUTE 句と INTO キーワードは許可されません)。結果の型はブール型で、サブクエリに行が含まれている場合は TRUE を返します。 例アクティビティ構成メイン テーブル activity_main は、act_code を使用してアクティビティを一意に識別します。アクティビティ会場適応テーブル activity_area は、act_code を介してメイン テーブルに関連付けられます。アクティビティ賞品テーブル activity_sku は、act_code を介してメイン テーブルに関連付けられます。 アクティビティメインテーブルテーブル `activity_main` を作成します ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `act_code` varchar(255) NOT NULL COMMENT 'アクティビティコード', `act_name` varchar(255) NOT NULL COMMENT 'アクティビティ名', 主キー (`id`)、 ユニークキー `uniq_code` (`act_code`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='アクティビティメインテーブル' イベント開催サイトの適応表テーブル `activity_area` を作成します ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `act_code` varchar(255) NOT NULL COMMENT 'アクティビティコード', `area` varchar(255) NOT NULL COMMENT 'このアクティビティに参加しているウェブサイト', 主キー (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='イベントと互換性のあるウェブサイトのリスト' イベント賞品一覧テーブル `activity_sku` を作成します ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `act_code` varchar(255) NOT NULL COMMENT 'アクティビティコード', `sku` varchar(255) NOT NULL COMMENT 'イベント中に配布された製品', 主キー (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='アクティビティギフトテーブル' EXISTS と IN を使用してクエリを比較する この例では、意味的に類似した 2 つのクエリを比較します。最初のクエリでは IN を使用し、2 番目のクエリでは EXISTS を使用します。両方のクエリは同じ情報を返すことに注意してください。 # 体重計を照会する select * from activity_main where act_code in ( activity_sku から act_code を選択します。ここで、sku は 'Lingye Jun の体脂肪計' です。 ) # 体重計を照会する select * from activity_main a where exists ( activity_sku b から 1 を選択します。ここで、a.act_code = b.act_code かつ b.sku = 'Lingye Jun の体脂肪計' ) # ファジークエリ B-BEKO 英国製ベビーカー select * from activity_main where act_code in ( '%B-BEKO%' のような sku を持つ activity_sku から act_code を選択 ) # ファジークエリ B-BEKO 英国製ベビーカー select * from activity_main a where exists ( activity_sku b から 1 を選択します。ここで、a.act_code は b.act_code で、b.sku は '%B-BEKO%' です。 ) # Blog Garden で開催されているアクティビティをクエリする select * from activity_main where act_code in ( area = '博客园' である activity_area から act_code を選択 ) # Blog Gardenで開催されているアクティビティをクエリする select * from activity_main a where exists ( activity_area b から 1 を選択します。この場合、a.act_code = b.act_code かつ b.area = '博客园' となります。 ) # Blog Gardenでイベントを開催するためのアクティビティ情報。賞品はHuaweiの携帯電話です。select * from activity_main where act_code in ( area = '博客园' かつ act_code in ( ) の activity_area から act_code を選択 activity_sku から act_code を選択します (sku = 'Huawei P30Pro') )) # 内側の層が存在するステートメントは、現在の where ステートメントでのみ有効です。最終的に返されるかどうかは、最外層が存在するかどうかによって決まります。true の場合は結果セットに返され、false の場合は破棄されます。 activity_mainから*を選択します。存在する場合( a.act_code = b.act_codeかつb.area = '博客园'であり、存在するactivity_area bから1を選択します。 (a.act_code = c.act_code、c.sku = 'Huawei P30Pro' の場合、activity_sku c から 1 つを選択) ) 上記はMysql existsの使い方のまとめの詳しい内容です。Mysql existsの使い方についてもっと知りたい方は、123WORDPRESS.COMの他の関連記事もぜひご覧ください! 以下もご興味があるかもしれません:
|
>>: Nginx サーバーが Systemd カスタム サービス プロセス分析を追加
前回の記事では、MySQL ステートメントの実行時間をチェックする 2 つの方法を紹介しました。今日...
問題を見つける上位の SQL ステートメントを取得すると、DB が大量のselect @@sessi...
IE8 の新機能 Web スライス (Web スライス) Microsoft は 3 月 20 日...
多くのアプリやウェブサイトでは、ログインやアカウント登録の際にSMS認証コード1を送信する場所があり...
ウェブデザイナーでもUIデザイナーでも、ログインページや登録ページのデザインは必ず経験しなければなら...
ハイパーリンク <a> タグはリンク ポイントを表します。これは英語の単語「anchor...
目次1. リテラル値でオブジェクトを作成する2. 新しいキャラクターを使ってオブジェクトを作成する3...
以前は、角を丸くするのは非常に面倒でしたが、CSS3 では、角を丸くするのは非常に簡単になり、bor...
序文インターセプター最近のフロントエンド フレームワークでは、インターセプターは基本的に非常に基本的...
Web デザインにおけるツリーとは何ですか?簡単に言うと、リンクをクリックするとサブディレクトリが展...
最新のソリューション: -v /usr/share/zoneinfo/Asia/Shanghai:/...
目次1. 目的2. 文法3. 練習する1. 目的通常、エラーが発生すると、スクリプトは直ちに停止し、...
目次序文主な実装コードHTMLコードJSコード序文南の友達の多くは、雪をほとんど見たことがない、ある...
Windows 2003+IIS6 の fastcgi 構成ファイル fcgiext.ini を最適...
数日前、Google Reader で Yu Bo さんが共有した投稿「空のパスがページのパフォーマ...