我有两个表information_business和business_likes。
表-1 : - information_business有字段com
等。
表-2 : - business_likes包含字段id , name , address , dt_added
如果某人喜欢某个商家,我会在business_likes表中插入新数据作为business_id,user_id和status = 1,如果同一个人不喜欢该行,则会更新。
现在我的问题是我想要选择所有喜欢的商家,其中最喜欢的是第一个,最喜欢的商数是最后一个。
如果任何业务的计数为零,则所有零计数的业务都在最后。
我尝试了很多查询,但对我来说没什么用。
查询:
id , business_id , user_id , status(1=> like , 0 => unlike)
答案 0 :(得分:2)
试试这个sql:如果你想要最高价值,你可以使用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;