我正试图通过内部联接从两个表中获取数据。我可以选择数据并使用foreach循环将其打印出来但我得到多组相同的数据。
这是我的SQL语句
SELECT workout.*, exercise.ExerciseName, exercise.Sets, exercise.Reps, exercise.Weight
FROM workout
INNER JOIN exercise
ON workout.WorkoutID = exercise.WORKOUTID
WHERE workout.WorkoutID = 1
它带回WorkoutID,UserID,WorkoutName和&说明三次,尽管它是相同的信息。我认为这是因为ExerciseName,Sets,Reps,&每个人的体重都不同。这是有问题的,当我循环数据以回显它,因为它打印出数据3次,每次不同的练习一次。
如何获得WorkoutID,UserID,WorkoutName和&描述一次并继续获得不同的ExerciseName,Sets,Reps,&权重。如果可能的话。
感谢。
答案 0 :(得分:0)
如果您的用户与3个不同重量的3个练习相关联,那么您希望只看到WorkoutID, UserID, WorkoutName, & Description
一次{如果我误解了问题,请更正我)
如果权重相同并且您想要查看一次信息,则可以添加以下命令:
选择DISTINCT
[...]
答案 1 :(得分:0)
总结我的评论作为答案:
如果您有多个行包含有关单个实体的信息,例如在这种情况下的锻炼细节,则无法删除重复的锻炼ID和用户ID,这将始终相同。你想要做的是迭代每个id的结果。