内部联接查询返回类似的数据集

时间:2013-06-29 00:14:12

标签: php sql

我正试图通过内部联接从两个表中获取数据。我可以选择数据并使用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,&权重。如果可能的话。

感谢。

2 个答案:

答案 0 :(得分:0)

如果您的用户与3个不同重量的3个练习相关联,那么您希望只看到WorkoutID, UserID, WorkoutName, & Description一次{如果我误解了问题,请更正我)

如果权重相同并且您想要查看一次信息,则可以添加以下命令: 选择DISTINCT [...]

答案 1 :(得分:0)

总结我的评论作为答案:

如果您有多个行包含有关单个实体的信息,例如在这种情况下的锻炼细节,则无法删除重复的锻炼ID和用户ID,这将始终相同。你想要做的是迭代每个id的结果。