比如查询用户是否购买过该产品,需要到订单表根据用户id和产品id查询是否存在记录$isBuy = $mOrder->where($map)->count();
if($isBuy > 0 ) {
echo "已购买";
} else {
echo "未购买";
}$isBuy = $mOrder->where($map)->find();
if(!empty($isBuy) ) {
echo "已购买";
} else {
echo "未购买";
}大概有百万条数据,这两种count和find哪个效率更高,对数据库影响更小呢?
if($isBuy > 0 ) {
echo "已购买";
} else {
echo "未购买";
}$isBuy = $mOrder->where($map)->find();
if(!empty($isBuy) ) {
echo "已购买";
} else {
echo "未购买";
}大概有百万条数据,这两种count和find哪个效率更高,对数据库影响更小呢?
find 找到 1条就返回
count, 到1条 +1 , 第二条在+1; 当然条件相同的可能有缓存, 记住结果直接返回