SQL查询,根据另一行选择行

时间:2013-07-31 16:46:29

标签: tsql sql-server-2008-r2

我有一个照片评论应用程序,SQL Server 2008 R2后端。一个要求是我可以用“异常照明”,“模糊”等异常标记照片。另一种选择是“未识别”。

每当用户选择“Unidentified”时,他们都需要添加一个额外的异常,称为“其他”,并给它一个描述。他们可以在没有“身份不明”的情况下拥有“其他”异常,但反之亦然。

如果图片还有“未识别”异常,我需要创建一个列出所有“其他”异常的报告。不知道如何编写一个完成此任务的查询。基本上,该表有一个photoID,anomalyID,以及“other”的描述文本字段,如果需要(加上其他一些不相关的东西)。

因此,伪代码将是:

从photo_anomalies中选择PhotoID,说明 照片异常“其他”描述不为空, 但只有当该photoID存在匹配的“未识别”异常时。

清楚如泥?

1 个答案:

答案 0 :(得分:0)

我找到了一个解决方案 - 不确定它是否是最好的,但似乎有效。使用select where =“unidentified”inner在PhotoID上加上select where =“Other”。