0

我有两张桌子:相册和照片。

使用用户名搜索时,我想为每个专辑获取所有 Album.title 和只有一个 Photo.url 作为专辑封面(无论哪张照片)。

但如果我这样做:

 SELECT Album.title,Photo.url FROM Photo     
 INNER JOIN Contain ON (Photo.picid = Contain.picid)
 INNER JOIN Album ON (Album.albumid = Contain.albumid)
 WHERE username ='david'

(contain只是一个关系表,保存照片属于哪个相册,username是相册表的一个属性)

这将返回所有 Photo.url 但我只想要一个.. 谢谢!

4

3 回答 3

0

试试这个查询:

SELECT Album.title,(SELECT Photo.url FROM Photo 
                    WHERE Photo.picid = Contain.picid LIMIT 1) 
 FROM Contain INNER JOIN Album ON (Album.albumid = Contain.albumid)
 WHERE username ='david'
于 2013-09-24T04:35:22.523 回答
0

您可以在查询中添加限制 1,

SELECT Album.title,Photo.url FROM Photo LIMIT 1    
INNER JOIN Contain ON (Photo.picid = Contain.picid)
INNER JOIN Album ON (Album.albumid = Contain.albumid)
WHERE username ='david'
于 2013-09-24T04:38:03.410 回答
0

我想你需要申请 group by

SELECT Album.title,Photo.url FROM Photo     
INNER JOIN Contain ON (Photo.picid = Contain.picid)
INNER JOIN Album ON (Album.albumid = Contain.albumid)
WHERE username ='david'
Group by Album.title,Photo.url
于 2013-09-24T06:04:06.090 回答