我正在使用关系型MySQL数据库作为网站,人们可以通过上传各种媒体来创建在线故事:音频剪辑,照片,视频等。将登录到个人空间,人们可以创建,查看和编辑故事。对于这个问题,我们假设数据库有4个表格:内存盒(包含关于故事的元信息,例如:标题,日期和描述),音频,照片和视频(后三者将所有媒体连接到内存盒中的一个故事表 - 单个媒体文件通过具有存储箱ID的列链接到故事)。将多个表格中的媒体与另一个表格中的元信息相关联的MySQL查询
我使用PHP来选择与故事和故事的元数据相关的所有媒体,并导出到XML文件。从XML中,我将使用jQuery来显示,首先,故事(某种图标和故事标题),然后在单击故事图标时显示故事视图中的所有媒体。
我想要的是将所有媒体文件与只有一个故事(及其元数据)相关联。我的问题是,我无法完全得到我需要的XML结果,而且不确定问题是出现在查询还是数据库结构中。我试图选择所有IDS匹配的地方,但是这给了我一个长长的每个媒体文件的单独条目列表。我也尝试过使用LEFT JOIN将所有内容与一个内存盒ID关联起来,但我仍然得到了一个ID的多个条目。我试过GROUP BY,但是这只给了我一行媒体数据。
有没有可以做到这一点的查询,还是我需要重新考虑我的数据库结构?
感谢,谢丽尔
你有一个故事有很多媒体数据,但你希望它只返回一行(条目)?是对的吗?!你可以发布你的SQL这个查询吗? – 2012-07-31 15:16:21