簡體   English   中英

加入2個mysql表並按1個表中相同行的數量排序

[英]Joining 2 mysql table and ordering by number of same rows in 1 table

我需要一些mysql查詢的幫助。

我有2張桌子,

表1 - 照片(photo_id,photo_url)

1 ----- www.someurl.com
2 ----- www.someurl.com
3 ----- www.someurl.com
4 ----- www.someurl.com

表2 - 收藏夾(favorite_id,user_id,photo_id)

1 ------- ------ 5 1
2 ------- ------ 5 2
3 ------- ------ 6 1
4 ------- ------ 6 3
5 ------- ------ 7 2
6 ------- ------ 7 3
7 ------- ------ 8 3
7 ------- ------ 8 4

我希望從喜歡的用戶數量中獲得照片表排序的結果。

正確的訂購必須是:

1)Photo-3(3票)
2)Photo-2(2票)
2)Photo-1(2票)
2)Photo-4(1票)

SELECT  a.photo_url, COUNT(b.photo_ID) totalVotes
FROM    table1 a
        LEFT JOIN table2 b
            ON a.photo_ID = b.photo_id
GROUP BY a.photo_url
ORDER BY totalVotes DESC

暫無
暫無

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

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