gpt4 book ai didi

android - 查询同步数据库列与星期几

转载 作者:行者123 更新时间:2023-11-29 22:35:57 25 4
gpt4 key购买 nike

我正在做一个 android studio 项目,我正在使用 SQLite 数据库。在应用程序中,我允许用户输入当天的卡路里摄入量。

数据库将有相应的列来保存用户当天的卡路里摄入量。星期一的卡路里摄入量将保存在 Monday_Cal 列中。

编辑:该应用程序在数据库中有两个表; 1 存储用户详细信息、所需卡路里和 Mon_Cal 等。 2 存储产品详细信息和卡路里量。用户选择产品并将卡路里添加到总量中。

例如,

我的问题是如何使输入卡路里的列更改以匹配日期

例如:

当星期一结束时,所选列将从 Monday_Cal 更改为 Tuesday_Cal。

我最初的计划是一个简单的 if 语句,我认为有一些我可以调用的东西(时钟或日历),但是我找不到该领域的任何 Material 或教程,我认为我可能正在搜索错误的短语?如果这种方式行不通,是否还有其他替代方案。

最佳答案

您确实不想将个别日期存储为用户表中的字段。如果您只存储周一至周日,那么您就限制自己只能为每人保存 7 天的历史记录。

更好的解决方案是将卡路里摄入量分离到自己的表中,该表与用户表相关,如下所示:

create table calorie_intake(
user_id integer not null,
intake_date date,
calories integer,
primary key(user_id, intake_date),
foreign key (user_id) references users(id)
);

此架构使用 users 表的 id 字段来创建关系。要查找用户特定日期的卡路里摄入量,您可以执行类似于以下内容的查询:

select calories
from users u
inner join calorie_intake i
on u.id = i.user_id
where u.id = 1
and intake_date = '2015-04-10';

这将为您提供 ID 为 1 的用户在 2015 年 4 月 10 日的卡路里摄入量。

这种创建关系并摆脱“一个表中的所有数据”设计的过程称为规范化,有大量关于该主题的信息,如果您要进行任何数据库工作,您搬起石头砸自己的脚,却没有意识到这个概念。 heres a link to get started

关于android - 查询同步数据库列与星期几,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29550466/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com