个人平时记录的,有点乱
1、修改时间字段,如果时间字段的类型是date或者是datetime类型的
update 表名 set 时间字段 = DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s') where id = 110
2、查询时间格式为date或者datetime类型的数据,用时间做条件的
select * from 表名 where date_format(时间字段,'%Y-%m-%d') = '2016-12-10'
3、替换某个字段中的指定字符或数据
update 表名 set 指定字段 = REPLACE (指定字段,'要替换的内容','替换的新内容') where id = 110;
4、Mysql 查询结果拼接,这个是将数据查询拼接成一个url格式的数据http://www.kxblogs.com/n/20161210/110.html
SELECT CONCAT('http://www.kxblogs.com/n/',DATE_FORMAT(时间类型字段,'%Y%m%d'),'/',ID字段,'.html') as url FROM 表名 WHERE id > 100 and inputtime < 110;
5、根据一个表的字段查询另一个表字段的数据
SELECT 信息表字段, (SELECT 用户表字段 FROM 用户表 WHERE 用户表的ID = 信息表的用户ID) as 别名 FROM 信息表 WHERE id > 100 and inputtime < 110;
6、查询前10分钟的数据
SELECT 字段 FROM 表名 where 时间字段 >= date_sub(sysdate(),interval 600 second);
7、符合另一个表某个字段里面任意一条数据
select * from 表名 where catid = any(select catid from 另一个表 where id in (1,2,3,4,5,6,7,8,9,10));
相反用all
select * from 表名 where catid! = all(select catid from 另一个表 where id in (1,2,3,4,5,6,7,8,9,10));
8、多表查询join查询拼接
SELECT b.title,CONCAT('http://www.kxblogs.com/n/',DATE_FORMAT(a.inputtime, '%Y%m%d'),'/',a.id,'.html') as url FROM 表b b LEFT JOIN 表a a ON b.aid = a.id
欢迎指错和讨论,相互学习。