[英]Count result of Sub-query and Use it in Query
我有两个表information_business和business_likes。
表1 : id , name , address , dt_added
具有字段id , name , address , dt_added
等。
表2 --- business_likes具有字段id , business_id , user_id , status(1=> like , 0 => unlike)
如果某人喜欢某项业务,那么我要在business_likes表中插入新数据作为business_id,user_id和status = 1,并且如果同一个人不喜欢该行,则会进行更新。
现在我的问题是, 我想选择所有喜欢次数最多的公司,而最喜欢次数最少的公司是最后一个。
如果任何企业的零计数,那么所有零计数的企业都排在最后。
我尝试了很多查询,但对我没有用。
查询:
SELECT *, (SELECT COUNT(status)
FROM business_likes) AS business_likes_count
FROM `business_likes`
LEFT JOIN information_business ON information_business.id = business_likes.business_id
ORDER BY business_likes.id
尝试以下sql:如果您希望最高的价值排在首位,则可以group by on business id
使用group by on business id
使用ORDER BY business_likes_count DESC
。
SELECT information_business.*,COUNT(status) as business_likes_count FROM `business_likes` JOIN information_business
ON information_business.id= business_likes.business_id group by business_likes.business_id ORDER BY business_likes_count DESC;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.