› MySQL 5.5 Community Server
› MySQL 5.6 Community Server
› Percona Configuration Wizard
› XtraBackup 搭建主从复制
Great Sites on MySQL
› Percona
› MySQL Performance Blog
› Severalnines
推荐管理工具
› Sequel Pro
› phpMyAdmin
推荐书目
› MySQL Cookbook
MySQL 相关项目
› MariaDB
› Drizzle
参考文档
› http://mysql-python.sourceforge.net/MySQLdb.html
zmz980126
V2EX  ›  MySQL

求教 Mybatis 一个数据库查询问题

  •  
  •   zmz980126 · Aug 7, 2019 · 5081 views
    This topic created in 2613 days ago, the information mentioned may be changed or developed.

    是这样子的,需求要 A 表的信息,A 除了一些其他字段,有(varchar)A.belong_type,(int)A.belong 字段,有 N1,N2,N3 比方说这三个表(可以认为这三个表都只有 id,name 字段),要通过 belong_type 的值"1","2","3"决定哪个表(N1,N2,N3)使 A.belong=Nx.id 得到 name 字段 有什么效率比较高的实现方式吗? 我自己是先 select 了一遍 A,然后通过那两个字段又 select 了一遍 Nx,但感觉效率太差了,而且 Nx 的条目一多就会很慢 我也不知道设计数据库的那位为啥没给 Nx 设计 type 字段 以及<if text="xxx"> 标签只能接受外部参数吗?不可以是查询的字段吗</if>

    7 replies  •  2019-08-08 09:27:53 +08:00
    quickma
        1
    quickma  
       Aug 7, 2019   ❤️ 1
    <if text="xxx">这个标签是 Mybatis 的不是 SQL 的,所以不行

    然后 case when 是不是可以解决这个问题?
    huangdaxian
        2
    huangdaxian  
       Aug 7, 2019
    Left join 里面 on 加条件?
    zilaijuan
        3
    zilaijuan  
       Aug 7, 2019 via Android
    借楼问一下,怎么配 mybatis generator 才能在 mapper 里生成批量插入的方法?搜了半天没搜到。。。
    gz911122
        4
    gz911122  
       Aug 7, 2019
    case when 不就完事了
    ColoThor
        5
    ColoThor  
       Aug 7, 2019
    union ?
    zmz980126
        6
    zmz980126  
    OP
       Aug 8, 2019
    case when 可以决定连哪个表?
    zmz980126
        7
    zmz980126  
    OP
       Aug 8, 2019
    我好像明白了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   838 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 22:12 · PVG 06:12 · LAX 15:12 · JFK 18:12
    ♥ Do have faith in what you're doing.