1

次のようなテーブルがあるとします。

| Book in Shelves | Arrived Books | Borrowed Books | Total Books |
        15               10                5              ?

最初の3つの列を追加して、合計を列に表示するにはどうすればよいTotal Booksですか?

Book in Shelves + Arrived books - Borrowed Books = Total Books
4

2 に答える 2

1

以下に提供した計算で「総書籍数」を更新するという意味ですか?これを試して:

UPDATE `tablename` SET total_books=(books_in_shelves+arrived_books-borrowed_books)

トリガーを使用することもできます。

「ダミーのためのPHPとMySQL」は私の意見では良い本です。しかし、たとえばLynda.comのインターネットチュートリアルも役に立ちます。

于 2013-03-25T00:10:07.267 に答える
1

データベースの設計時には、他の値から計算できる値を保存しません。これにより、データベースの一貫性が失われます。例:を20に更新した場合はBook in Shelves、を編集するために別のクエリを追加する必要がありますTotal Books。したがって、計算できる列を追加しないでください。データベースからデータを取得するときは、次のようにすることができます。

SELECT `Book in Shelves`, `Arrived Books`, `Borrowed Books`, (`Book in Shelves` + `Arrived Books` - `Borrowed Books`) AS `Total books` FROM `table`;

結果:

+-----------------+---------------+----------------+-------------+
| Book in Shelves | Arrived Books | Borrowed Books | Total books |
+-----------------+---------------+----------------+-------------+
|              15 |            10 |              5 |          20 |
|              44 |            22 |              5 |          61 |
|              12 |             2 |              7 |           7 |
+-----------------+---------------+----------------+-------------+
于 2013-03-25T00:15:16.433 に答える