我的表格:
表格1 练习 | primaryMuscleGroup | motionName | | ------------------ | -------------- ------| | 胸部 | 双杠臂屈伸 | | 胸部 | 卧推 | | 胸部 | 俯卧撑 | | 胸部 | 飞鸟 | | 腿部 | 深蹲 | | 腿部 | 弓步 | | 背部 | 硬拉 | 表格2 健身记录 | name | motionName | | ------------------ | -------------- ------| | 约翰·史密斯 | 双杠臂屈伸 | | 莎莉 | 深蹲 | | 华莱士 | 弓步 | | 克里斯托夫 | 硬拉 |
查询应该返回一个人没有做过的肌肉群的所有练习。例如,如果我们为客户“约翰·史密斯”运行查询,我们应该返回:
| primaryMuscleGroup | motionName | | 腿部 | 深蹲 | | 腿部 | 弓步 | | 背部 | 硬拉 |
如果我们为客户“莎莉”运行查询,我们应该返回:
| primaryMuscleGroup | motionName | | ------------------ | -------------- ------| | 胸部 | 双杠臂屈伸 | | 胸部 | 卧推 | | 胸部 | 俯卧撑 | | 胸部 | 飞鸟 | | 背部 | 硬拉 |
您可以使用外连接或者使用
not exists
来实现,看看下面的查询是否符合您的需求:雷雷
https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=eb216b7579d5fcd0c0ab628717f3d676