非常に厄介な問題に悩まされています。私は単純な投稿とコメントのセクションをブログのように2つのテーブル "投稿"と "コメント":単一MySQLクエリのPOST_COMMENTS
投稿 - > idpost、タイトル、テキスト、日付 コメント - > idcomment、idpost_cmt、電子メール、メッセージ、idcomment_cmt
非常に簡単です。 | _コメント1
ポスト
: - idpost_cmt誰かがすでに既存のコメントにコメントを送信する場合>外部キーがポストにテーブルが
コメントテーブルすなわちの最後のフィールド、「idcomment_cmt」に使用されます
| _コメント2
| _コメント3
| _コメント4
_ _ | _コメント4.1
_ _ |コメント5 _ | _ 4.2
コメント。 。 。 など...
ここで私が正確に望むのは、単一のmysqlクエリのすべての投稿とコメントを照会することです。私が今やっていることは、まずすべての投稿を取得してから各投稿をループすることです。各サイクルで、私は現在の投稿IDを使用してコメントに照会します。コメントをループし、各コメントサイクルで、現在のCommentIDを使用してサブコメントをクエリします。
このように、単一のページ要求では、500以上のSQLクエリが必要になる可能性があります。これはデータベースサーバーには多すぎます。 誰かがこれを達成する方法を手伝ってくれたら、本当に感謝します。
ありがとうございました...
リレーショナルデータベースで階層データについては、これを読む:http://stackoverflow.com/questions/4048151/what-are-the-options-for-storing-hierarchical-data-in-a-relational-database 。 **隣接関係リスト**モデルを使用しています。 –