• Mybatis学习记录(六)--开发中的小问题


    近期開始做项目,期间遇到一些小问题,开此贴记录一下

    1.关于order by

    今天写一个sql查询语句,用了order by可是一直没效果,后来才发现用了#{}取值,mybatis使用这个的话对于String类型会自己主动加上引號,导致sql无效,正确做法用$取代#

        SELECT * FROM cum_user
            <where>
                <if test="search != null">
                    (username LIKE #{search} ) or (nickname LIKE #{search}) OR (stunum LIKE #{search})
                </if>
            </where>
            <if test="ordername != null">
    --             对于排序使用${}符号
                ORDER BY ${ordername} ${order}
            </if>

    2.关于三张表查询去重问题

    一张主表problem,关联着catelog和cum_user两张表的主键,以下是正确的查询方法,不然会出现非常多反复结果

    SELECT problem.id,pro_name,cate_id,catelog.cate_name,pro_pass,pro_sub,problem.credits,start_time,user_id,cum_user.username
    FROM problem
      LEFT JOIN cum_user on problem.user_id = cum_user.id
      LEFT JOIN catelog on problem.cate_id = catelog.id
    WHERE (problem.pro_name LIKE '%1%' ) or (problem.id LIKE '%1%' ) OR (catelog.cate_name LIKE '%1%')
    ;
  • 相关阅读:
    架构资料
    Node参考资料
    运维参考资料
    前端参考资料
    Python参考资料
    推荐几个工具型网站
    学好Mac常用命令,助力iOS开发
    git submodule相关操作
    HttpURLConnection传JSON数据
    【树莓派笔记3】安装配置samba 和Windows进行文件共享
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/7294102.html
Copyright © 2020-2023  润新知