まず、くだらないデータベース構造を私に押し付けないでください。私たちは皆、対処しなければならない変更できないものを持っています。私は、アプリケーションに深く根付いているこれらのテーブルを継承しました。
次の 2 つのテーブルを検討してください。
Personnel
+-----+-------+--------------+
| ID | Name | TECHNIQUE_ID |
+-----+-------+--------------+
| 134 | Bob | 1,2,4 |
+-----+-------+--------------+
| 135 | Mary | 1,3,4 |
+-----+-------+--------------+
| 136 | Frank | 2 |
+-----+-------+--------------+
Techniques
+-----+----------+
| ID | Name |
+-----+----------+
| 1 | Fishing |
+-----+----------+
| 2 | Archery |
+-----+----------+
| 3 | Bowling |
+-----+----------+
| 4 | Hiking |
+-----+----------+
私が必要としているのは、実行するテクニックのコンマ区切りリストを含む各人物のリストです。本質的に「1、3、4」を「釣り、ボウリング、ハイキング」に変えます。
ネストされたクエリを使用して CF コードでこれを行うことができますが、レポートには何千もの行があり、1 つのレポートだけで何万ものクエリを実行する可能性があります。1 つのクエリですべてを実行したいと思います。