【MyBatis】(MyBatis 其他查询操作 多表查询 #{} 和 ${} 排序功能 like 查询 #{} 和 ${} 的区别 数据库连接池)


MyBatis

其他查询操作

创建表:

-- 创建⽂章表
DROP TABLE IF EXISTS articleinfo;
CREATE TABLE articleinfo (
 id INT PRIMARY KEY auto_increment,
 title VARCHAR ( 100 ) NOT NULL,
 content TEXT NOT NULL,
 uid INT NOT NULL,
 delete_flag TINYINT ( 4 ) DEFAULT 0 COMMENT '0-正常, 1-删除',
 create_time DATETIME DEFAULT now(),
 update_time DATETIME DEFAULT now() 
) DEFAULT charset 'utf8mb4';
-- 插⼊测试数据
INSERT INTO articleinfo ( title, content, uid ) VALUES ( 'Java', 'Java正⽂', 1
);

在这里插入图片描述

在这里插入图片描述

多表查询

对应model

SQL中直接查询多个表,把查询的结果放在一个对象即可。

package com.example.demo.model;

import lombok.Data;


import java.util.Date;

@Data
public class ArticleInfo {
   
    private Integer id;
    private String title;
    private String content;
    private Integer uid;
    private Integer deleteFlag;
    private Date createTime;
    private Date updateTime;
    //用户相关信息
    private String username;
    private Integer age;
}

SQL

select ta.*, tb.username,tb.age from articleinfo ta 
left join userinfo tb on ta.uid = tb.id 
where ta.id = 1

这是一个拼接的SQL查询语句,用于从两个数据表articleinfouserinfo中检索数据。下面是对这个查询语句的逐步解释:

  1. 选择字段:
select ta.*, tb.username, tb.age

这部分表示选择articleinfo表中的所有字段(ta.*),以及userinfo表中的usernameage字段。tatb是这两个表的别名,用于简化后续的查询。

  1. 连接表:

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马尔科686

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值