select中的一些属性
| id | 对应mapper中的方法名 |
|---|---|
| parameterType | 对应方法的输入参数(注意:parameterType可写可不写,它会找方法中的参数) |
| resultType | 对应方法的输出(一般是实体类) |
| resultMap | 对应方法的输出(注意:resultMap可以将多个表合并输出) |
resultMap的一些属性
| id | 作为给予select的一种id标识 |
|---|---|
| type | 实体类 |
| property | 实体类属性 |
| column | 数据库字段名 |
| jdbcType | 数据库字段类型 |
collection中的一些属性(一对多)
| property | 对应实体类集合字段名称 |
|---|---|
| column | 相当于与别的表嵌套的列 |
| fetchType | 可以延迟加载(注意:lazy懒加载(被定义的实体,在实体加载时将不会马上从数据库中加载),eager急加载(被定义的实体,在实体加载时将马上从数据库中加载)) |
| ofType | 指定集合里面元素的类型 |
| select | 实体中集合实体的查询条件(相当于针对这个实体你想查询那些信息) |
association中的一些属性(一对一)
| property | 指定哪个属性是联合的对象 |
|---|---|
| javaType | 指定这个属性对象的类型 |
foreach的一些属性
| collection | 该属性的集合类型 |
|---|---|
| open | 表示该语句以什么开始 |
| separator | 分割值 |
| close | 表示以什么结束 |
| item | 集合中每一个元素进行迭代时的别名 |
| index | 指定一个名字,用于表示在迭代过程中,每次迭代到的位置 |
写sql用到的一些技巧
| not in | 都不在里面的返回true | and drt.age not in (21, 23, 24) |
|---|---|---|
| in | 里面就返回true | and drt.age IN (‘31’,‘32’,‘33’,‘34’) |
| LIKE | 模糊查询 | and sheet.dmd_code LIKE concat(’%’,#{param.dmdCode},’%’) |
| FIND_IN_SET | 查询集合中有的值 | and FIND_IN_SET(sheet.org_id, #{param.orgIds}) |
| date_format | 时间转化 | <![CDATA[AND ( date_format(sheet.apply_time, '%Y-%m-%d') >= #{param.startTime} )]]> |
| LIMIT | 返回数据的行数(注意:如果是一位数字则表示从0行开始多少条数据,如果两位数据则表示a行b条数据) |
SQL的笛卡尔积
| join on | 拼接一张表(返回这两张表的数据,和这两张表直接通过id关联结果是一样的) |
|---|---|
| left join on | 左关联查询(返回左表的全部数据,如果右表没有的话,那么右表则返回null数据) |
| right join on | 右关联查询(返回右表的全部数据,如果左表没有的话,那么左表则返回null数据) |
mybatisPlus