ここで困惑している。
テーブルが1つあるので、本棚と呼びましょう。テーブルには次のフィールドがあります。
[shelf_id、title、latest_books]
次に、フィールドのある本の表があります。
[book_id、shelf_id、title、date_added]
各本は棚に割り当てられます。これが私がやりたいことです...
すべての本棚について、その本棚に割り当てられている本を探し、それらの本からbook_idを取得して、コンマで区切られた本棚フィールド「latest_books」にフィードします。さらに複雑にするために(?)棚ごとに5つのbook_idだけが必要です。それが簡単になれば、それぞれから1つだけで行うことができます。これを手動で1つずつ実行するために使用できるクエリは次のとおりです。
update bookshelves
set latest_books =
(select book_id from books
where shelf_id = 1
order by date_added DESC
limit 0,1)
where shelf_id = 1;
本棚と本のテーブルの両方に何万ものレコードがあるので..私はそれを一つずつ行うことができますが、私は一年中それをします。
私はCentOSのMySQLで作業しています。スクリプトなどを使ってかっこいいです。