簡體   English   中英

平均評分計算mysql php

[英]average rating calculation mysql php

我想計算每個用戶的平均評分。

我有三個桌子。

表等級

id |order_id |rate
------------------
1  | 52      |8
2  | 51      |4
3  | 52      |2
4  | 51      |7

表順序

這是驅動程序表ID

id |did
------------------
52  | 5 
51  | 7 
35  | 6 
44  | 8 

表驅動

id |name 
------------------
5  | test1 
7  | test2 
8  | test3 
6  | test4 

我的SQL查詢是

select dr.name,AVG(drate.rate) from `rating` as drate,`order` as ord,`driver` as dr where ord.did=dr.id and drate.order_id=ord.id 

我的查詢總是只給出一個結果。

在這里,我想從評分表中選擇平均匯率,但關系是評分表order_id =訂單表ID,而訂單表做了=駕駛員表ID

那意味着

order_id(rating table) |id(order table) |id(driver table) |rate
-------------------------------------------------------------------
52                     | 52             |5                |avg(8,2)
51                     | 51             |7                |avg(4,7)

如果order.did是用戶ID,則

select order.did, AVG(rate) from rating
join order on order.id = drate.id
group by order.did

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM