我想從三個表中獲取數據(照片,相冊,album_photos), 那麼程序在專輯表搜索用戶相冊加入語句限制,然後尋找每一張專輯的album_photos中照片的ID,然後,對於每個ID,通過ID查看照片表中的所有數據。內以三種表
昨天我問了一個這樣的問題:Inner join with 3 tables,但是現在,我認爲問題是不同的,我想知道如何通過inner join
增加一個請求限制。
所以,我在此代碼現在的工作:
SELECT a.album_name, a.album_id, c.*
FROM albums a
INNER JOIN album_photos b ON a.album_id = b.album_id
INNER JOIN photos c ON b.photo_id = c.photo_id
WHERE (
SELECT COUNT(*)
FROM album_photos d
WHERE b.album_id = d.album_id
AND d.nick = :nick
) <=5
好吧,這個代碼選擇的有5張或更少的照片的相冊。我不想讓代碼這樣做,無論這張專輯有多少張照片,我都想用5張照片來展示專輯。
其他人都告訴我,你不能這樣做,我認爲,這是不是這樣,因爲SQL語言是非常複雜的,我認爲我們應該做它的工具。
有什麼辦法以適當的方式做到這一點?
*在上述我把關於輸出數據的示例性我正在共享該鏈接。
請添加示例數據和預期輸出 – 2013-03-19 21:25:04
在我所分享的鏈接,你可以找到輸出預期! – 2013-03-19 21:27:22