我寫過的這個查詢,列出銷售競賽中的前25名,顯示錯誤的結果。GROUP BY lname ORDER BY顯示錯誤結果
用戶沒有表現出應該在名單上相當遠。任何想法可能是什麼問題?
SELECT u.fname, u.lname, SUM(p.point) as points
FROM comp_sale s, comp_product p, comp_user u
WHERE s.prod_id = p.product_id
AND s.sale_id = u.wp_id
GROUP BY lname
ORDER BY points DESC limit 25
表comp_user:
user_id int(11) NO PRI NULL auto_increment
fname varchar(255) NO NULL
lname varchar(255) NO NULL
storename varchar(255) NO NULL
city varchar(255) NO NULL
phone varchar(255) NO NULL
wp_id int(11) NO NULL
type varchar(255) NO NULL
表comp_sale
prod_id int(11) NO NULL
sale_id int(11) NO NULL
serial varchar(255) NO NULL
表comp_product
product_id int(11) NO PRI NULL auto_increment
description varchar(255) NO NULL
type varchar(255) NO NULL
cylinda_num int(11) NO NULL
eel_num int(11) NO NULL
point int(11) NO NULL
你爲什麼按lName分組?我相信這就是你的結果不正確的原因 – Rahul
不是查詢應該像'GROUP BY u.lname ORDER BY p.points' – Darshana