MYSQLには2つのテーブルがあります。
Encounters
+----+--------+------------+
| Id | GameId | LocationId |
+----+--------+------------+
| 1 | 5 | 10 |
| 2 | 5 | 12 |
| 3 | 5 | 45 |
+----+--------+------------+
EncounterCards
+----+-------------+--------+
| Id | EncounterId | CardId |
+----+-------------+--------+
| 6 | 1 | 26 |
| 7 | 2 | 5 |
| 8 | 3 | 5 |
+----+-------------+--------+
EncounterCards
2つのテーブルを結合し、テーブル内のすべてのレコードを削除しようとしていますGameId = 5
。GameId
内部結合を実行すると、テーブル内の列を検索しているため、これを実行できないようですがEncounterCards
、Encountersテーブル内にのみ存在します。
したがって、このユースケースでは、EncounterCards
テーブルからすべてのレコードが削除されます。
これが私の質問です:
`$query = "DELETE FROM EncounterCards INNER JOIN Encounters ON Encounters.Id = EncounterCards.EncounterId WHERE Encounters.GameId = {$game_id}";`