Usersテーブルをカウント:はPHP/MySQLは、ほとんどのご注文商品
ORDER_ITEMS表:
Ordersテーブル:
$sql[2] = "SELECT p.p_name, o.created, COUNT(oi.id) AS db FROM products AS p
INNER JOIN order_items AS oi ON oi.product_id = p.id
INNER JOIN orders AS o ON o.id = oi.order_id
GROUP BY p.p_name
ORDER BY db DESC, o.created DESC
LIMIT 1";
$result3= mysqli_query($conn,$sql[2]) or die(mysqli_error());
if (mysqli_num_rows($result3)>0)
{
while ($record = mysqli_fetch_array($result3))
{
echo $record['p_name']." - ".$record['db']." - ".$record['created']."<br/>";
}
}
私は最も注文された製品名、そしてどのようにマネキン製品が販売されるのか、そしてこの製品が発注された最後の日付を数えたいと思う。この場合、結果は次のようになります。 Barack - 4 - 2016-12-15 09:36:21しかし、私のSELECTは3だけカウントしています。どのようにアイデアを修正できますか?
offtopicあなたはGROUP BYを間違って使用しています。 o.createdはGROUP BYステートメントに名前が付けられていないので、すべての値になります。そして、テーブルからSQLダンプを作成して、代わりにここに画像(またはsqlfiddle.com)を投稿してください。 –