【发布时间】:2019-07-05 20:08:34
【问题描述】:
我有一张评论帖子表,其中偶尔会有 OP “喊出”另一张海报(因此文本看起来像 '%@Id%',其中 ID 是该线程中另一张海报的 ID)。
我正在尝试提出某种查询,以便我可以返回原始帖子并喊出 cmets。我想我可以用递归查询来做到这一点,但我得到了一个错误代码。
SELECT p.CreatedBy AS OP, p.Post AS FirstPost, c.Comment AS ShoutOut
FROM Posts p INNER JOIN Comments c ON p.Id=c.PostId
WHERE p.CreatedBy=c.CreatedBy AND c.Comment LIKE '%' +
(SELECT cc.CreatedBy
FROM Comments cc
WHERE cc.PostId=p.Id) + '%'
这是返回
Msg 512, Level 16, State 1, Line 190 "子查询返回超过 1 个 价值。当子查询跟随 、>=、
关于我应该做什么的任何想法?
【问题讨论】:
标签: sql-server