0

我不太了解 MySQL,所以我需要一些帮助来完成这项任务。我希望可以问。

我有一个需要导出的表,我使用以下代码进行了导出:

SELECT *
FROM `members`
WHERE `active` =1
AND `level` = 'full'
LIMIT 0 , 30000

这很完美,并为我提供了我需要的大部分内容,包括名为的列中的用户 ID,id但我还需要获取每个成员的相关图像并将其添加到我导出的 .csv 中。

图像(文件名)存储在另一个名为的表中,images但这仅包含galleryid,filenamedefaultimg(注意我只对数据感兴趣defaultimg = 1

id这里的问题是此表中没有对成员 ( ) 的引用。

为此,我必须引用一个名为: 的不同表imagelinks,其中包含 2 列:

1)id这与我galleryidimages表有关。

2)与表memberid中的用户 ID相关。idmembers

我知道这是多么糟糕的设置。

所以..我需要做的并且不能为我的生活工作的是导出一个.csv,其中包含members表中的所有用户数据(如我上面的代码中所述),并添加表中的filename数据images对应于引用的用户(其中defaultimg = 1​​ )。

最后,我还需要在数据前面添加一个 URL filename

例如:表格有my-image.jpg,但在导出的 .csv 中我需要它http://www.domain.com/images/my-image.jpg

我正在尝试在 PhpMyAdmin 中完成所有这些工作。

对此的任何帮助将不胜感激。

谢谢

4

1 回答 1

1

我的语法可能有点偏离,但这应该很接近......

SELECT members.*, CONCAT('http://www.domain.com/images/', images.filename) AS thefilename FROM members INNER JOIN imagelinks ON members.id=imagelinks.memberid INNER JOIN images ON images.galleryid=imagelinks .id WHERE members.active=1 AND members.level='full' AND images.defaultimg=1

于 2012-06-20T23:58:17.127 回答