今考えているアプリのフローを簡単にまとめると、
①日付をコンボボックスで選択
②分類1,2,3をコンボボックスで選択し、登録する食品を選ぶ(DBの食事テーブルから持ってくる)
③登録ボタンを押し選択した食品をDBに登録
④日付を選択し、ボタンを押すことで、その日付で登録された食品情報を表示
というような流れの処理を行いたいです。
ここで、DBのテーブルをどのように設計すればいいのかわかりません。
まず②の操作を行うために、予め食事テーブルというテーブルを作成する必要があると思います。
1つの食品のデータが持つ属性は次のようにします。
食品の質量、炭水化物量、タンパク質量、脂質量、エネルギー量、分類1、分類2、分類3
分類に関して例を挙げると、分類1:主食, 分類2: 米類、分類3:カレーライスなどが入っています。
④の操作で日付から登録した食品を表示するためには、日付情報と登録された食品情報を属性にもつ登録テーブルが必要だと思います。
このような処理を行いたいとき、どのように食事テーブル、登録テーブルを設計すれば良いでしょうか。
質問内容が分かりにくく申し訳ありません。
わからない点あれば補足いたしますので、よろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ある程度の正規化をした関係データベースならば
-- テーブル
分類 ( 分類コード, 分類種別, 分類名 )
食品 ( 食品コード, 食品名, ... )
食品分類 ( 食品コード, 分類コード )
きょうの食事 ( 人物コード, 日付, 食品コード )
-- 関係
食品 -(1対n)- きょうの食事
食品 -(1対n)- 食品分類 -(n対1)- 分類
-- 分類3 が カレーライス である食品を並べる
select C.食品コード, C.食品名
from 分類 A
inner join 食品分類 B using (分類コード)
inner join 食品 C using (食品コード)
where A.分類コード = 'CURRY' and A.分類種別 = 3
-- 元旦に食べた食事のカロリーを量る
select sum(B.エネルギー量)
from きょうの食事 A
inner join 食品 B using (食品コード)
where A.日付 = date '2023-01-01'
No.1
- 回答日時:
データーベースと言うのは、利用方法を指定しない、
単なるジャーナルが良いです。
そのほうが、多様な統計に対応できます。
①~④は、一部統計処理を含んでいます。
「食事テーブル」「登録テーブル」が消えたり変わったりしたら
データーも変わる、
これでは、データーベース、とは言えません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- MySQL [1000地域 × 10カテゴリー = 1万件のテーブル]!グループ化? 1 2023/06/14 23:56
- Oracle sqlで質問です。 Aテーブルの登録番号をキーにBテーブルから確認番号を取得したいのですが、Bテーブ 4 2023/05/18 13:08
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Excel(エクセル) 重複データの抽出について 2 2023/07/21 14:52
- 知的財産権 【至急】商標登録の区分がわからず困っています。 3 2023/02/21 12:11
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テーブルリンク リンク元を知...
-
会社の飲み会の幹事になり、座...
-
L2SWはARPテーブルを持っている?
-
飲み会で、座敷orテーブルどち...
-
面接のときテーブルが正面に。...
-
下の画像はSQLの4大命令の性質...
-
外部キーだけのテーブル(主キ...
-
アクセスのリンクテーブル一覧...
-
MySQLで複数テーブルを作成する
-
ちょっとぐらいの時間なら里山...
-
テーブルの白く剥がれてるところに
-
2つのテーブルのカウント結果...
-
UTF8のテーブルをODBCドライバ...
-
[DB設計]多対多の問題点とは
-
【PHP】SQL文のSUM関数で出力し...
-
【SQL】グループ化した際の最頻...
-
「テーブルに座って……」という...
-
SQL 現在のレコードより古い番...
-
立体の重心の求め方について
-
複数テーブルにわたるCOUNT
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
会社の飲み会の幹事になり、座...
-
テーブルリンク リンク元を知...
-
L2SWはARPテーブルを持っている?
-
テーブルの白く剥がれてるところに
-
飲み会で、座敷orテーブルどち...
-
まるいテーブル 円い 丸い 漢字...
-
1つのテーブルに同じデータを参...
-
このテーブルで
-
置き配された食べ物を袋からど...
-
外部キーだけのテーブル(主キ...
-
【PHP】SQL文のSUM関数で出力し...
-
「テーブルに座って……」という...
-
男性と2人で飲食店に行きテーブ...
-
アクセスのリンクテーブル一覧...
-
一致するデータのみ削除したい
-
論理名とコメント構文(?)について
-
ACCESSで3ファイルを結合して、...
-
MySQLで複数テーブルを作成する
-
複数テーブルにわたるCOUNT
-
SQL 外部結合
おすすめ情報