mybatis 查询一个列 结果集是啥类型? 查询一个列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis 查询一个列 结果集是啥类型? 查询一个列相关的知识,希望对你有一定的参考价值。

查询一个列 结果集是什么类型?

如果只是查询一个字段,用String类型就可以,resultType="String";

如果是多个字段,可以用相关的类名作为返回类型,例如 你的monitor_entity表对应的实体类为Monitor,就可以这样写:resultType="Monitor";
如果是多个字段,而且多个字段不在同个表中,可以使用Map作为返回值,resultType="Map",方便取值。
参考技术A id的类型一般是整形,int吧 参考技术B java.lang.Integer

多表查询

一、子查询

按返回结果分类:

  • 表子查询:返回的结果集是一个行的集合,N行N列(N>=1)。表子查询经常用于父查询的FROM子句中。
  • 行子查询:返回的结果集是一个列的集合,一行N列(N>=1)。行子查询可以用于福查询的FROM子句和WHERE子句中。
  • 列子查询:返回的结果集是一个行的集合,N行一列(N>=1)。
  • 标量子查询:返回的结果集是一个标量集合,一行一列,也就是一个标量值。可以指定一个标量表达式的任何地方,都可以用一个标量子查询。

 

1.1 表子查询

SELECT playerno
FROM 
    (SELECT playerno, sex
    FROM players
    WHERE playerno < 10) AS players10
WHERE sex=‘M‘;

  

1.2 行子查询

SELECT playerno
FROM players
WHERE (sex, town) = 
    (SELECT sex,
         town
    FROM players
    WHERE playerno = 100);

  

1.3 列子查询

SELECT playerno, name, town
FROM players
WHERE playerno IN 
    (SELECT playerno
    FROM players
    WHERE sex = ‘F‘);

  

1.4 标题子查询

SELECT playerno
FROM players
WHERE year(birth_date) = 
    (SELECT year(birth_date)
    FROM players
    WHERE playerno = 27)
        AND playerno <> 27; 

  

 

二、join

1.1 inner join

SELECT * FROM t_blog JOIN t_type ON t_blog.typeId=t_type.id;
SELECT * FROM t_blog,t_type WHERE t_blog.typeId=t_type.id;

  

1.2 left join

SELECT * FROM t_blog LEFT JOIN t_type ON t_blog.typeId=t_type.id;

  

 

以上是关于mybatis 查询一个列 结果集是啥类型? 查询一个列的主要内容,如果未能解决你的问题,请参考以下文章

关于Mybatis将查询结果中添加常量列并返回

Mybatis 查询的结果集,列的顺序如何去控制

精通Mybatis之结果集处理流程与映射体系(联合查询与嵌套映射)

Mybatis中查询语句map的使用

获取特定表中特定列的数据类型的 Presto 查询是啥?

联合查询、表连接查询、子查询三种查询的特点和注意事项各是啥