MySQL与MyBatis中的查询记录
1、时间段查询
MySQL:select * from table
where ctime >= CURDATE() and ctime <DATE_SUB(CURDATE(),INTERVAL -1 DAY);
XML:
<select id="selectByUidToday" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from fc_temporarydanger_census_t
where uid = #{uid,jdbcType=INTEGER} and ctime >= date(now()) and ctime < DATE_ADD(date(now()),INTERVAL 1 DAY)
</select>
2、获取当天开始与截止时间
JAVA:
Calendar c = new GregorianCalendar();
log.error("c:"+c);
c.set(Calendar.HOUR_OF_DAY,0);
c.set(Calendar.MINUTE,0);
c.set(Calendar.SECOND,0);
c.set(Calendar.MILLISECOND,0);
Date start = c.getTime();
log.error("start:"+start);
c.set(Calendar.HOUR_OF_DAY,23);
c.set(Calendar.MINUTE,59);
c.set(Calendar.SECOND,59);
c.set(Calendar.MILLISECOND,999);
Date end = c.getTime();
log.error("end:"+end);
Map<String, Object> m = new HashMap<String, Object>();
m.put("start", start);
m.put("end", end);
List<FcTargetAssessment> list2 = fcTargetAssessmentMapper.selectByCtime_2(m);
log.error("list2:"+list2.toString());
log.error("ta2:"+list2.size());
XML:
<select id="selectByCtime_2" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from fc_target_assessment_t
where ctime >= #{start} and #{end} >= ctime
</select>
3、批量更新update
int updateBatch(Map<String, Object> m);
<update id="updateBatch">
update fc_naturaldanger_item_t
set checkret_bigd =
<foreach collection="list" item="item" index="index" separator=" " open="case ID" close="end">
when #{item.id} then #{item.checkretBigd}
</foreach>
where id in
<foreach collection="list" item="item" index="index" separator="," open="(" close=")">
#{item.id,jdbcType=INTEGER}
</foreach>
</update>
4、批量插入insert
int insertBath(Map<String, Object> m);
<insert id="insertBath">
insert into fc_naturaldanger_item_t (dangerstudyid,dangerid, checkret)
values
<foreach collection="list" item="item" separator=",">
(#{dangerstudyid}, #{item.dangerid}, #{item.checkret})
</foreach>
</insert> //id为自增长状态
MySQL与MyBatis中的查询记录的更多相关文章
- mybatis中的查询缓存
一: 查询缓存 Mybatis提供查询缓存,用于减轻数据压力,提高数据库压力. Mybatis提供一级缓存和二级缓存. 在操作数据库时需要构造SqlSession对象,在对象中有一个数据结构(Hash ...
- mybatis中的查询语句in用法的相关问题
在开发的时候,mybatisl中使用in的时候会遇到一些问题,如果我们传的参数是String类型,以“,”来进行隔开的,例如:参数是0,1,2字符串,mybatis中的语句如下 <select ...
- mybatis中模糊查询的使用以及一些细节问题的注意事项
页面有个功能 为 根据 品牌名进行 关键字查询,对应到数据库的是brand表的name字段的模糊查询 如果用的是SSM框架,在mybatis中我们需要自己写sql语句,涉及到like的模糊查询,myb ...
- 基于mysql对mybatis中的foreach进行深入研究
鉴于上一篇博文一次修改mysql字段类型引发的技术探究提到的,要对foreach里面的collection相关的内容做一些介绍,今天就围绕foreach,做一些数据插入和查询相关的研究. 首先介绍一下 ...
- SSM-MyBatis-15:Mybatis中关联查询(多表操作)
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 先简单提及一下关联查询的分类 1.一对多 1.1单条SQL操作的 1.2多条SQL操作的 2.多对一 2.1单 ...
- mysql基础-数据库表简单查询-记录(五)
0x01 MySQL的查询操作 单表查询:简单查询 多表查询:连续查询 联合查询 选择和投影 投影:挑选要符合的字段 select ...
- MyBatis中模糊查询
接口 // 模糊查询 List<User> getUserLike(String value); Mapper.xml文件 <!-- 模糊查询 --> <select i ...
- Mybatis中模糊查询的各种写法
1. sql中字符串拼接 SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%'); 2. 使用 ${...} ...
- 【mybaits】Mybatis中模糊查询的各种写法
工作中用到,写三种用法吧,第四种为大小写匹配查询 1. sql中字符串拼接 SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{t ...
随机推荐
- P3158 [CQOI2011]放棋子
传送门 题解(因为公式太多懒得自己抄写一遍了--) //minamoto #include<bits/stdc++.h> #define ll long long #define R re ...
- 传统的线程互斥技术:Synchronized关键字
多个线程操作同一个方法或变量时常常出现错误,要保证每个线程都正常运行就要通过加锁,每次只有一个能够拿到锁通过.如下: package cn.sp.thread; /** * Created by 2Y ...
- 转 oracle apex 使用
https://wenku.baidu.com/view/e5a4226955270722182ef725.html
- selenium通过autoit实现上传和下载
autoit安装目录如下: AutoIt Windows Info 用于帮助我们识Windows控件信息. Compile Script to.exe 用于将AutoIt生成 exe 执行文件. ...
- [转]Windows Azure入门教学系列 (六):使用Table Storage
本文转自:http://blogs.msdn.com/b/azchina/archive/2010/03/11/windows-azure-table-storage.aspx 本文是Windows ...
- SQL Server 编程入门
一.T—SQL 的组成 1.DML(数据操作语言 Data Manipulation Language) 查询.插入.删除和修改数据库中的数据.SELECT.INSERT.UPDATE.DELETE ...
- struts 2.5 There is no Action mapped for namespace [/] and action name [user_find] associated with context path [/struts2_crm].
遇到了这个错误. There is no Action mapped for namespace [/] and action name [user_find] associated with con ...
- vue项目开发前的es6的知识储备
let命令 学习笔记 1.let所声明的变量,只在let命令所在的代码块内有效. 2.不存在变量提升:所声明的变量一定要在声明后使用,否则报错. 一定要先声明,再去使用.let x=x;这样就是错误的 ...
- 使用Glide加载Android图片
一.概述 Glide是一个在Android端非常好的图片缓冲工具,总体上来说,他有以下优点 使用简单 自适应程度高 支持常见的图片格式,如jpg,png等 支持多种数据源,网络,本地,资源,Asset ...
- Toast解析
课程Demo public class MainActivity extends AppCompatActivity { private Button bt1; private Button bt2; ...