私はユーザーがメモを作成できる場所に取り組んでいます。フェッチで表示中にサブデータを取得しますか?
メモには、id、owner_id、およびdataがあります。実際 ページのロードが、私は、ユーザーのすべてのノートを取得し、PHPのループでそれを表示してフェッチするための基本的なSELECTクエリを作る:
$stmt = $conn->prepare("SELECT id, data FROM notes WHERE owner = ?");
$stmt->bind_param("s", $_SESSION["id"]);
[...]
while($stmt->fetch()){
display_note($note_id, $data);
}
ノートテーブルは次のようになります。
Note(id, owner, data)
私がしようとしているのは、ノートにタグを追加することです。
Tags(id, name)
Note_tags(note_id, tag_id)
ユーザーがタグを追加するときに、タグ名がすでにそのタグのIDを取得するか、代わりにそれを作成し、作成した新しいを取り戻す存在するのであれば、私のPHPコードに見える2つの追加のテーブルを作成したことを行うために、タグID。
次に、note_tags
テーブルにメモIDとタグIDを含むエントリを追加します。
問題は、フェッチループでメモを表示するときに、メモのすべてのタグを取得する方法がわかりません。
私はメモごとにSELECTクエリを実行する必要があると思っていましたが、これは最善の解決策ではないと思います。たとえば、ユーザーが100音以上の音を持っている場合、100の質問を作成するのは良い考えですか?
これはもっと良い解決策ではないので、PHPでネストされたクエリを実行する方法は?
ありがとうございました。