これは見落とされがちな問題かもしれません。まず、次の点を明確にする必要があります。 条件 1 かつ条件 2 または条件 3 のテーブルから * を選択 select * from table where (条件 1 AND 条件 2) OR 条件 3 と同等 条件 1 かつ条件 2 または条件 3 かつ条件 4 のテーブルから * を選択 select * from table where (条件 1 AND 条件 2) OR (条件 3 AND 条件 4) と同等 より深く理解するために、いくつかの例を見てみましょう。 テストテーブルデータ: 名前を設定します utf8mb4; FOREIGN_KEY_CHECKS = 0 を設定します。 -- ---------------------------- -- 本の表構造 -- ---------------------------- `book` が存在する場合はテーブルを削除します。 テーブル「book」を作成します( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `name` varchar(25) 文字セット utf8mb4 COLLATE utf8mb4_0900_ai_ci デフォルト NULL, `author` varchar(25) 文字セット utf8mb4 COLLATE utf8mb4_0900_ai_ci デフォルト NULL, `price` 小数点(10, 2) デフォルト NULL, BTREE を使用した主キー (`id`) ) エンジン = InnoDB 文字セット = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- 書籍の記録 -- ---------------------------- `book` に VALUES (1, 'PHP', 'mate', 21.00) を挿入します。 `book` に VALUES (2, 'JAVA', 'kaven', 23.00) を挿入します。 `book` に VALUES (3, 'JAVA Advanced', 'loose', 45.00) を挿入します。 `book` に VALUES (4, 'GO', 'jim', 46.00) を挿入します。 `book` に VALUES (5, 'GO Design', 'json', 76.00) を挿入します。 INSERT INTO `book` VALUES (6, 'PHP Advanced Programming', 'bate', 67.00); `book` に 7、'Python'、'jim'、66.00 を挿入します。 `book` に VALUES (8, 'Python Design', 'mali', 54.00) を挿入します。 `book` に VALUES (9, 'GO Programming', 'kaven', 86.00) を挿入します。 `book` に値 (11, 'Python3', 'jim', 55.00) を挿入します。 FOREIGN_KEY_CHECKS = 1 を設定します。 クエリ方法 1: SELECT * FROM book WHERE author='jim' OR author='json' AND name='PHP'; 上記のクエリは次のクエリと同等です。 SELECT * FROM book WHERE author='jim' OR (author='json' AND name='PHP'); すると、上記のクエリ結果が簡単に理解できるようになります。 クエリ方法 2: SELECT * FROM book WHERE name='PHP' AND author='jim' OR author='json'; 上記のクエリは次のクエリと同等です。 SELECT * FROM book WHERE (name='PHP' AND author='jim') OR author='json'; クエリ方法3: SELECT * FROM book WHERE name='GO' AND (author='jim' OR author='json'); これは理解しやすいですね。 and またはの優先順位を理解します。これらのクエリはそれほど「理解するのが難しい」ものではありません。 これで、MySQL の and or クエリの優先度分析に関するこの記事は終了です。MySQL および or クエリに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSS3 FlexBox の伸縮自在なレイアウトを 10 分で理解する
1.テーブル全体を更新します。データ行の列の値が空の場合は、別の列フィールドの値と同じにします。 ...
変換して翻訳するTransform は、変換と変形を意味します。他の幅属性や高さ属性と同様に、CSS...
著者 | 編集者 Awen | 制作 Tu Min | CSDN (ID: CSDNnews)不満を...
この問題に関して、オンライン リソースをたくさん見つけました。ここにいくつかの方法を示します。コード...
MySql 自動切り捨て例の詳細な説明友人が質問しました。プロジェクト内で挿入または更新ステートメン...
リンク上の点線のボックスを削除しますコードをコピーコードは次のとおりです。 a:アクティブ、a:フォ...
XML/HTML コードコンテンツをクリップボードにコピー< div クラス= "c...
序文mysql モジュール (プロジェクト アドレスは https://github.com/mys...
目次フィルター01.とは02. やり方(1)フィルターを定義する(2)使用方法(3)フィルタパラメー...
知らせ! ! ! uid が (a,b,c,null) に含まれないユーザーから * を選択します。...
問題の説明: 非同期リクエストの数が不確定な場合、数百の http リクエストが瞬時に発生したときに...
1. インライン参照:ラベルに直接使用されるが、メンテナンスコストが高い スタイル='フォ...
以前、MySQLがローカルでは接続できるのにリモートでは接続できないという問題に遭遇したことがありま...
この記事では、トップに戻るボタンを実装するためのJavaScriptの具体的なコードを参考までに紹介...
目次序文1. 技術原理1.1 レイアウト1.2 コンポーネント1.3 ステータス1.4 イベント1....