在sql中编写相关子查询

时间:2015-03-09 11:21:13

标签: sql sql-server

我有两个表:表A和表B

  1. 表A和表B都有RowId列。
  2. 表A和表B都有ModifiedAt列。
  3. 表A还有一个名为Key的列。
  4. 检查条件:

    1. 如果表A'Key'= someconstant
    2. ,则从表A中检索RowId
    3. Table A获取检索到的行ID,并检查这些行的ModifiedAt字段是否为>表B的ModifiedAT字段具有相同的rowId。
    4. B没有重复RowId,但表A没有。

      注意:我曾问过这个问题here,并试图自己写,但我失败了。

      我自己尝试了什么:

      select *
      from dbo.ResultsStored rs
      WHERE HashedKey = hashbytes('MD5', @StringConcat) 
                             and 
                             rs.ModifiedAT > (select Max(ModifiedAt)
          from dbo.Patients P
          where P.RowId = rs.RowId)
      

      注意: 另外,让我感到惊讶的是,如果我用硬编码的值替换rs.RowId说'1',它可以工作但不是这样。

      我可以请一点帮助吗?

0 个答案:

没有答案