sql >> Databáze >  >> RDS >> PostgreSQL

Proč můj dotaz zahrnující dělení a COUNT vždy vede k 1?

Pokoušíte se spočítat odlišné řádky, ale nepoužíváte count(distinct ...)

SELECT 
    COUNT(distinct c.id) as "Total Customers",
    COUNT(distinct p.id) as "Total Sales",
    COUNT(distinct c.id) * 1.00 / COUNT(distinct p.id) as "Sales per customer"
FROM test_customers c
    LEFT OUTER JOIN test_purchases p ON c.id = p.cid

Všimněte si, že výkon není skvělý




  1. Je možné vynutit zamykání na úrovni řádků v SQL Server?

  2. Aktualizace MySQL pomocí poddotazu v režimu bezpečné aktualizace

  3. Sqoop na Hadoop:NoSuchMethodError:com.google.common.base.Stopwatch.createStarted()

  4. Mysql:Dotaz na spojení dat tabulky na základě nejbližšího časového razítka