次のように、データベースに 3 つのテーブルがあります。
kill_list
+-----------------------------------------------+
| id | batch_name | execution_date | status |
+-----------------------------------------------+
| 1 |Shallow Minds | 2013-10-29 | 0 |
+-----------------------------------------------+
| 2 | Brain Dead | 2013-10-26 | 1 |
+-----------------------------------------------+
kill_list_designation
+------------------------------+
| id | kill_list | target |
+------------------------------+
| 1 | 1 | 1 |
+------------------------------+
| 2 | 1 | 2 |
+------------------------------+
| 3 | 2 | 4 |
+------------------------------+
| 4 | 1 | 5 |
+------------------------------+
| 5 | 2 | 3 |
+------------------------------+
targets
+--------------------------------+
| id | firstname | lastname |
+--------------------------------+
| 1 | John | Smith |
+--------------------------------+
| 2 | Mark | Hall |
+--------------------------------+
| 3 | Kim | Stone |
+--------------------------------+
| 4 | Rob | Reeds |
+--------------------------------+
| 5 | Ivan | Gay |
+--------------------------------+
現在、このクエリを使用して kill_list テーブルのクエリを検索することしかできません
SELECT *
FROM kill_list
WHERE batch_name LIKE CONCAT('%', 'query term', '%')
OR execution_date LIKE CONCAT('%', 'query term')
OR status LIKE CONCAT('%', 'query term', '%');
このクエリでは、キル リストの詳細のみを取得できますが、リストに含まれるターゲットは取得できません。「 Mark 」を検索すると、クエリはkill_list
Mark が含まれる #1の詳細を表示するはずです。
用語を入力して、キル リストのすべてのターゲットを取得するにはどうすればよいですか? クエリは、用語をターゲットの名前と比較できる必要があります。どうもありがとう!