私は人々と彼らについてのメモの間に1対多の関係を持っています。1 人あたり 0 個以上のメモを含めることができます。
すべてのメモを 1 つのフィールドにまとめる必要があります。メモを持っている人はあまり多くなく、1 人あたり最初の 3 つのメモだけを持ち込む予定なので、最大で 3 つのクエリを使用して収集できると考えました。私のすべての情報。
私の問題は、mySQL クエリをまとめて、1 人あたりの最初、2 番目などのメモを取得することです。
各人が持っているメモの数を知ることができるクエリがあり、それがテーブルにあります。私は何かを試しました
SELECT
f_note, f_person_id
FROM
t_person_table,
t_note_table
WHERE
t_person_table.f_number_of_notes > 0
AND t_person_table.f_person_id = t_note_table.f_person_id
GROUP BY
t_person_table.f_person_id
LIMIT 1 OFFSET 0
OFFSET を 1 に変更してから 2 に変更して、これを最大 3 回実行することを望んでいましたが、1 人につき 1 つのメモではなく、1 つのメモが返されるだけです。
例を読んでいない場合でも、これが明確であることを願っています。
私はテーブルに3人います。1 人 (A) はノートが 0 で、1 人 (B) はノートが 1 つ、もう 1 人 (C) は 2 です。
まず、人物 B と C の最初のメモを取得し、それらを人物テーブルのメモ フィールドに挿入します。
次に、人物 C の 2 番目のメモを取得し、それを person テーブルのメモ フィールドに追加します。
最終的に、B と C のメモがあり、C のメモ フィールドは 2 つのメモの連結になります。