数据库---MySql
1、ON DUPLICATE KEY UPDATE的作用
例子:老做法是写三条sql语句:
select * from player_count where player_id = 1;//查询统计表中是否有记录
insert into player_count(player_id,count) value(1,1);//没有记录就执行insert 操作
update player_count set count = count+1 where player_id = 1;//有记录就执行update操作
这种写法比较麻烦
用on duplicate key update 的做法如下:
insert into player_count(player_id,count) value(1,1) on duplicate key update count=count+1;
若数据表中存在以相同主键的记录,我们就更新该条记录。否则就插入一条新的记录。
建立索引,索引为c_date
如果c_date存在就会update,如果不存在就insert。
Calendar afterTime = Calendar.getInstance(); // afterTime.add(Calendar.DAY_OF_MONTH, -1); Date afterDateDay = (Date) afterTime.getTime(); SimpleDateFormat sdformat = new SimpleDateFormat("yyyy-MM-dd 00:00:00"); String paraDateDay = sdformat.format(afterDateDay);
paraDateDay都会是 整日期格式,后面是00:00:00。以确保以日期为索引的列。
坚持就是胜利