所以我拥有的很简单。 我有1张桌子
CategorieMain
像
CatMainid
CatMainName
和1表:
CategorieSub
像
CATID
CatName
CatMainId
我想要的是:
包含所有CatMainName的列表,以及所有CatSubNames的名称。
CatMainId1
使用CatMainId1的所有CatSubNames
CatMainId2
使用CatMainId2的所有CatSubNames
Etc Etc
目前我用php来获取像
这样的数据 SELECT * from Categoriemain
在while循环中我做
SELECT * FROM CategorieSub WHERE CatMain id = $row['CatMainId']
但这是非常低效的,因为现在如果我有10个CatMainId,我会做10个查询(每一个一段时间)
获取像这样的列表的最有效方法是什么,我正在考虑将它放在数组或其他东西中,但我无法使其正常工作?
答案 0 :(得分:0)
使用一个查询:
SELECT Categoriemain.*, CategorieSub.CatSubNames FROM Categoriemain
JOIN CategorieSub ON Categoriemain.CatMainid=CategorieSub.Catmainid
已编辑,已移除GROUP BY
使用此查询,您不需要while循环。
我还将CatSubNames添加到查询字段的输出列表中。
答案 1 :(得分:0)
SELECT * FROM Categoriemain
JOIN CategorieSub ON Categoriemain.CatMainid=CategorieSub.Catmainid
ORDER BY Categoriemain.CatMainid