ホームページ > データベース > mysql チュートリアル > MySQL LEFT JOIN と DELETE 構文を使用して行を削除するにはどうすればよいですか?

MySQL LEFT JOIN と DELETE 構文を使用して行を削除するにはどうすればよいですか?

DDD
リリース: 2024-12-01 19:49:10
オリジナル
1007 人が閲覧しました

How to Delete Rows Using MySQL LEFT JOIN with DELETE Syntax?

MySQL LEFT JOIN による行の削除

問題:

2 つのテーブルがあります。 1 つは仕事の締め切りに関するもの、もう 1 つは仕事の説明に関するものです。ジョブ記述テーブルのステータスに基づいて、期限エントリを削除する必要があります。選択に LEFT JOIN を使用すると機能しますが、DELETE を実行すると構文エラーが発生します。

選択のクエリ:

SELECT * FROM `deadline`
LEFT JOIN `job` ON deadline.job_id = job.job_id
WHERE `status` = 'szamlazva'
OR `status` = 'szamlazhato'
OR `status` = 'fizetve'
OR `status` = 'szallitva'
OR `status` = 'storno'
ログイン後にコピー

解決策:

DELETE 操作を実行するには、削除するテーブルを明示的に指定する必要があります。から行を削除します。可能なオプションは次のとおりです:

期限行のみを削除:

DELETE `deadline` FROM `deadline` LEFT JOIN `job` ....
ログイン後にコピー

期限行とジョブ行の両方を削除:

DELETE `deadline`, `job` FROM `deadline` LEFT JOIN `job` ....
ログイン後にコピー

ジョブのみを削除行:

DELETE `job` FROM `deadline` LEFT JOIN `job` ....
ログイン後にコピー

DELETE ステートメントで適切なテーブルを指定すると、ジョブ記述テーブルのステータスに基づいて目的の行を正常に削除できます。

以上がMySQL LEFT JOIN と DELETE 構文を使用して行を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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