由于我对 php 和 mysql(i) 脚本的速度和复杂性一无所知,所以我有这个问题:
我有一个包含 3 个表的数据库:
- “产品”大约有 9 个字段。包含产品数据,如“长”内容文本。
- 具有 2 个字段的“类别”。包含类别名称
- 'Productcategories' 有 2 个字段。包含哪些产品有哪些类别。每个产品属于 1-3 个类别。
为了设置分页(我需要 row_count 因为我想知道最后一页是什么),我想知道最充分的方法是什么,或者它取决于产品的数量(50、100、500 ?)。返回的结果取决于所选类别:
"SELECT * FROM `productcategories`
JOIN products ON products.proID = productcategories.proID
WHERE productcategories.catID =$category";
想法1:
- 1 个查询,它只选择 1 个字段,而不是全部。然后用 mysqli_num_rows() 计算我的分页的总行数。
- 第二个查询直接选择实际显示的 5 或 10 个(我期望有 LIMIT)产品。
想法2:
- 只有 1 个查询(上图),您使用 mysqli_nuw_rows() 进行行计数,然后过滤掉您要显示的行。
我不知道哪个是最好的。想法 1 似乎更快,因为您必须选择更少的数据,但我不知道还是需要的 2 个查询对速度有很大影响?哪个最快:收集“大量”数据或进行查询?如果我的想法完全走错了路,请随时纠正我。