sql >> Databasteknik >  >> RDS >> PostgreSQL

Varför resulterar min fråga som involverar division och COUNT alltid i 1?

Du försöker räkna distinkta rader, men använder inte en 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

Obs, prestandan är inte bra




  1. Hur kan jag komma utanför foreach loop-värdet i den här situationen?

  2. Släpp DB men ta inte bort *.mdf / *.ldf

  3. Visa nästa evenemangsdatum

  4. MySQL Hitta skillnader i lagernivåer mellan två tabeller och returnera resultatet