gpt4 book ai didi

mysql - 创建一个具有多个值到一个键的数据库

转载 作者:搜寻专家 更新时间:2023-10-30 23:10:42 24 4
gpt4 key购买 nike

我正在尝试创建一个包含多个值的键的数据库。

例如,键是“卧推”,值是“胸”、“三角肌”、“肩”。

我会有一堆这样的键,然后想搜索值并返回包含我正在搜索的内容的所有键。例如,如果我搜索胸部,我会找到卧推和其他具有该值(value)的练习。

我想知道这是否可能以及最好的方法是什么。我假设我将不得不为此使用 MySql。

谢谢!

最佳答案

您可能需要三个表来执行此操作。一个用来容纳你所有的锻炼,一个用来容纳你所有的肌肉,一个用来将锻炼与它们各自的肌肉联系起来。然后,您可以查询第三个表,使用 JOIN 语句找出任何一项锻炼的目标肌肉。

拥有三个表而不是两个表的好处是每个运动定义和肌肉定义都是独立的,因此任何运动都可以针对多 block 肌肉,并且任何肌肉都可以通过多种运动来定位。

架构:

表格练习

id (int255) |  exerciseName (varchar255)

table 肌肉

id (int255) |  muscleName (varchar255)

exerciseTargets

exerciseId (int255) | muscleId (int255)

:

exercise.id:初级

exercise.name:唯一

muscles.id:主要

muscles.name:独一无二

exerciseTargets.exerciseId:exercise.id 上的外键

exerciseTargets.muscleId:muscle.id 上的外键


示例查询:

SELECT muscleName FROM muscles INNER JOIN exerciseTargets ON exerciseTargets.muscleId = 肌肉.id WHERE exerciseTargets.exerciseId = :exerciseId;

(其中 :exerciseId 是练习的 ID。)

关于mysql - 创建一个具有多个值到一个键的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20863072/

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