[英]Most efficient way to get the data from database
所以我所拥有的非常简单。 我有一张桌子
分类主
喜欢
猫咪
猫咪主名
和一张桌子:
类别分类
喜欢
类别编号
猫名
CatMainId
'
我想要的是:
具有所有CatMainName的列表,并在所有CatSubNames的名称下。
CatMainId1
所有带有CatMainId1的CatSubName
CatMainId2
所有带有CatMainId2的CatSubName
等等等等
目前,我使用php获取数据,例如
SELECT * from Categoriemain
在while循环中
SELECT * FROM CategorieSub WHERE CatMain id = $row['CatMainId']
但这是非常低效的,因为现在如果我有10个CatMainId,我会做10个查询(每次查询一次)
获取这样的列表的最有效方法是什么,我正在考虑将其放入数组或其他内容,但无法正常工作?
使用一个查询:
SELECT Categoriemain.*, CategorieSub.CatSubNames FROM Categoriemain
JOIN CategorieSub ON Categoriemain.CatMainid=CategorieSub.Catmainid
已编辑,已删除GROUP BY
使用此查询,您不需要while循环。
我还将CatSubNames添加到查询字段的输出列表中。
SELECT * FROM Categoriemain
JOIN CategorieSub ON Categoriemain.CatMainid=CategorieSub.Catmainid
ORDER BY Categoriemain.CatMainid
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.