sql >> Databáze >  >> RDS >> Mysql

Použití SQL k nalezení celkového počtu zákazníků s více než X objednávkami

Zkuste toto:

SELECT T1.products_bought, COUNT(T2.cnt) AS total
FROM (
    SELECT '<5' AS products_bought, 0 AS a, 4 AS b
    UNION ALL
    SELECT '5-10', 5, 10
    UNION ALL
    SELECT '>10', 11, 999999
) T1
LEFT JOIN
(
    SELECT COUNT(DISTINCT ProductID) AS cnt
    FROM ORDERS
    GROUP BY CustomerID
) T2
ON T2.cnt BETWEEN T1.a AND T1.b
GROUP BY a, b

Výsledek:

products_bought  total
<5               3    
5-10             0    
>10              0    



  1. Jak MONTHNAME() funguje v MariaDB

  2. Jak odstranit duplikát s určitou podmínkou

  3. Java EE/JPA způsob, jak přidat nové tabulky/entity do databáze

  4. Hromadné vkládání polí pevné šířky