- 1.MySql表delete语句支持别名的写法:
delete m from mgmt_entity_assoc as m where 1=1 and m.mgmt_entity_assoc_type_id='DEPLOY' and m.mgmt_entity_id_to='46962'
- 2.mysql存储过程
delimiter $$ use `md_test`$$ drop procedure if exists `clearData`$$ create definer=`root`@`%` procedure `clearData`(in entity_type varchar(20)) begin declare sql_str varchar(2000); declare sql_or varchar(2000); # 删除 mgmt_entity_attribute set sql_str ='delete from mgmt_entity_attribute where mgmt_entity_id in ( select MGMT_ENTITY_ID from mgmt_entity where mgmt_entity_type_id ='; #注意四个单引号表示一个一引号 set sql_str=concat(sql_str,'''',entity_type,''')') ; set @delSql = sql_str; prepare stmt from @delSql; execute stmt; end $$ delimiter ;
调用存储过程
#调用 call clearData('VHOST'); #调用带有出参的存储过程 set @outp = ''; call clearData('VHOST',@outp);-- 清除数据库 select @outp
- MySql时间函数
mysql有几个时间函数now()、CURDATE()、CURTIME(),可以用来插入当前时。
NOW()函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中。
CURDATE()以'YYYY-MM-DD'的格式返回今天的日期,可以直接存到DATE字段中。
CURTIME()以'HH:MM:SS'的格式返回当前的时间,可以直接存到TIME字段中。
NOW()函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中。
CURDATE()以'YYYY-MM-DD'的格式返回今天的日期,可以直接存到DATE字段中。
CURTIME()以'HH:MM:SS'的格式返回当前的时间,可以直接存到TIME字段中。
以now()函数为例: insert into tablename (fieldname) values (now())
3.mysql删除数据问题
下面这个sql 会报 :错误代码: 1093
You can't specify target table 'mgmt_entity' for update in FROM clause
原因是:不能先select出同一表中的某些值,再update/delete这个表(在同一语句中)
相关推荐
mysql笔记
mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记 mysql笔记
尚硅谷mysql笔记.zip
MySQL笔记
MySQL笔记
在郑州一所培训机构时,收集的mysql笔记,质量很高哦
MySQL笔记(狂神说java)
mysql笔记
狂神MySQL笔记.rar
高性能Mysql笔记,网易云课堂https://study.163.com/course/courseMain.htm?courseId=1003746011课程笔记
MySQL笔记MySQL笔记
老杜MySQL笔记总结.md(全)
mysql笔记以及附带一份考试及答案练练手
MySQL几乎所有的知识的总结,每个知识点都有对应的例子
MYSQL学习笔记,根据网课总结,里面有课程链接,一天学完mysql
MySQL笔记,老杜,初级MySQL笔记
MySQL笔记
mysql基础知识,超级全