zoukankan      html  css  js  c++  java
  • SQL多表查询连接条件导致错误记录

      <select id="selectClueRemarkForDetailByClueId" parameterType="string" resultMap="BaseResultMap">
        select cr.id,cr.note_content,u1.name as create_by,cr.create_time,u2.name as edit_by,cr.edit_time,cr.edit_flag
        from tbl_clue_remark cr
        join tbl_user u1 on cr.create_by=u1.id
        left join tbl_user u2 on cr.edit_by=u2.id
        where cr.clue_id=#{clueId}
      </select>
    

      数据库的语句是没有问题的,但是连表查询时,条件使用cr.create_by和u1.id 作为两者的连接条件

    显而易见的是,这时候的create_by就不能习惯性的使用username了,我们应该相对应的从前端获取的是user.id

    这样前端的数据和后台查询对应的数据才能被查询出来

    ${sessionScope.sessionUser.id}通过前端发送至controller---> 调用service层  -->调用mapper的SQL语句执行数据库的查询操作获取到数据,返回给前端
  • 相关阅读:
    第一周作业
    第一周作业
    C语言I博客作业07
    C语言I博客作业06
    C语言I博客作业03
    C语言I博客作业04
    c语言|博客作业02
    字段的约束验证
    [转]AS IS ? ??运算符
    BindingManagerBase 跟踪不一致
  • 原文地址:https://www.cnblogs.com/LWF6869/p/13094112.html
Copyright © 2011-2022 走看看