指望我有三个表如何使用列数据加入了3个表
tbl_product
item_id | item_name
company_details
v_id | item_id | company_name
user_ratings
r_id | rate | v_id
我要计数率,也得到了公司的速度。这里是我的查询
SELECT company_details.v_id,
company_details.company_name,
COUNT(user_ratings.rate) as vote,
user_ratings.rate,
tbl_product.item_name
FROM company_details
LEFT JOIN tbl_product ON tbl_product.item_id = company_details.item_id
LEFT JOIN user_ratings ON user_ratings.v_id = company_details.v_id
GROUP BY company_details.v_id, user_ratings.rate
这是Whts我是这个查询后四处:
v_id company_name vote rate item_name
1 The Oberoi Udaivilas 1 4 5 Star Hotels
1 The Oberoi Udaivilas 1 5 5 Star Hotels
2 The Taj Mahal Palace 2 5 4 Star Hotels
3 Rambagh Palace 1 5 3 Star Hotels
4 Taj Lake Palace 1 5 5 Star Hotels
5 Windflower Hall 1 3 2 Star Hotels
5 Windflower Hall 1 5 2 Star Hotels
6 Leela Palace Kempinski 0 n 4 Star Hotels
7 Umaid Bhawan Palace 0 n 4 Star Hotels
8 Hotel Ratan Vilas 0 n 4 Star Hotels
9 The Leela Palace 0 n 4 Star Hotels
10 The Imperial Hotel 0 n 3 Star Hotels
你可以看到投票列不计。
这是我期待
v_id company_name vote rate item_name
1 The Oberoi Udaivilas 2 5 5 Star Hotels
2 The Taj Mahal Palace 2 5 4 Star Hotels
但这个查询没有从user_ratings
表计数率,因为我也想获得率,如果删除user_ratings.rate
从select
条款,那么这查询工作,但是当我在select
子句中添加user_ratings.rate
时,则此查询不计算速率为(投票),并且它在每个计数中都以一行形式返回。
你真的应该提供样品的输入和预期的输出,因为从你的描述它在所有目前尚不清楚是什么你问 –
如果,在你的输出,你想让它按公司划分,应该是在你的小组通过条款。 –
我仍然得到相同的结果 –