【问题标题】:How to match partial strings in one table to ID in another table?如何将一个表中的部分字符串与另一表中的 ID 匹配?
【发布时间】:2020-10-13 21:48:16
【问题描述】:

我需要找到一种方法来找出谁查看、共享和下载了文档。

我需要找到一种方法将 logDetail 表中的字符串中的文件 ID 与另一个表中的 documentID 匹配,这样我就可以将文件/文档名称与这些 ID 匹配。

下面显示了我的部分表格。

日志详情

文件

【问题讨论】:

    标签: sql string reporting-services inner-join sql-like


    【解决方案1】:

    嗯。 . .你可以这样做:

    select ld.*
    from logDetail ld join
         documents d
         on ld.logDetail like concat('% ID ', d.documentId);
    

    您显示的所有logDetail 记录都以' ID <number>' 结尾,因此这与该模式匹配。

    【讨论】:

      【解决方案2】:

      如果 id 总是在日志的末尾,你可以在连接条件中使用like

      select *
      from logdetail ld
      inner join documents d 
          on l.logdetail like concat('%', d.documentid)
      

      如果字符串格式是固定的,你甚至可以更精确:

      select *
      from logdetail ld
      inner join documents d 
          on l.logdetail = concat('Load Shared Document with ID ', d.documentid)
      

      【讨论】:

        猜你喜欢
        • 2021-04-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-02
        • 1970-01-01
        相关资源
        最近更新 更多