关于MYSQL三表联查的问题

现有三个表
表1:怪物掉落表(后面的掉落是物品分类代码)

img


表2:分类表(后面的代码是物品代码)

img


表3:物品表

img

目标:1、想要达成查询显示每个怪物掉落的所有物品
2、想要达成查询某一物品可以显示都由那些怪物掉落
PHP页面。
其实逻辑就是,物品代入分类,分类代入掉落。但我试了无数次都不成。两表联查的时候尚可显示分类物品都有什么,但分行显示,不能用GROUP_CONCAT这个函数,一用SQL就显示错误。 还有就是三表联查的话,因为有多个A=B,MYSQL会直接卡死。

求指教

额,这三个表的共同id是那个?

这个表设计存在严重问题,尤其是表1和表2,为啥子要把主从关系中的多个从横着放啊,这样怎么去做join呢?未来如果要增加从的数据,岂不是要往后面加字段?
建议先重新设计下表结构,以下是满足数据库三范式以及key-value模式的设计

img

另外,GROUP_CONCAT这个函数你用显示错误说明你sql写错了,不能说因为你不知道正确的sql语法就说不能用吧?

如果把表结构改成我上面这个样子,这么点数据3表联查没有任何性能压力