我有一个填充列表视图的 sql 语句。我的一个连接表有多个记录,我想进入同一个列表视图记录,而不是连接表中每个项目的单独记录。例如,目前,我在列表视图中返回了 7 条记录或行,其中包含以下数据。但我只希望返回 6 条记录,将具有相同 topicId 的照片分组到同一条记录中。
Select * from topic LEFT OUTER JOIN Photos On Topic.TopicId = Photos.TopicId
如果我在 Topic.TopicId = Photos.TopicId 和 Topic.PhotoId = Photos.PhotoId 上从主题 LEFT OUTER JOIN 照片中选择 *,那么我只会得到第一张照片。
我想返回 6 行:第 1 行有 3 张照片,第 2 行和第 3 行没有照片,第 4 行有 3 张照片,第 5 行没有照片,第 6 行有 1 张照片。
topic table
topicId topic photoId
1 abc 1
2 def null
3 ghi null
4 jkl 4
5 mno null
6 pqr 7
然后照片
photos table
photoid topicId photoname
1 1 bla
2 1 bla
3 1 bla
4 4 bla
5 4 bla
6 4 bla
7 6 bla