![](https://img-blog.csdnimg.cn/00fc3fb8413749f7bfaf3e0cf7654869.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
mysql2
mysql2
某科学的南条
我要偷偷的惊艳,然后打工所有人
展开
-
ON DUPLICATE KEY UPDATE和where同时使用
比如说我想这样,当where成立的时候才做更新,否则就不更新,我用下面的写法是错误的INSERT INTO table1 SET field1=aa, field2=bb, field3=ccON DUPLICATE KEY UPDATE SET field1=aa, field2=bb, field3=cc WHERE field4=zz;那么应该怎么改呢?应该这样INSERT INTO table1 SET field1=aa, field2=bb, field3=cc ON原创 2021-08-28 10:42:13 · 4883 阅读 · 2 评论 -
insert语句中和select配合使用
就这样写,应该能看懂吧,就是加上一个括号和as别名insert into dst_111yao_doms.d_srcorder_log(id, hdorderno, orowid, log_type, log_descr, createuser, createtime, time_stamp, create_time, update_time, ext1, ext2, ext3, ext4, ext5) values (null, 'SRC210823000078', (select if原创 2021-08-31 19:33:20 · 2900 阅读 · 0 评论 -
mysql的关于or的索引的问题
用UNION替换OR (适用于索引列)在下面的例子中, LOC_ID 和REGION上都建有索引*高效:select loc_id , loc_desc , region from location where loc_id = 10 union select loc_id , loc_desc , region from location where region = "melbourne" 低效:select loc_id , loc desc , region fro原创 2021-09-03 11:50:35 · 1376 阅读 · 0 评论 -
mysql判断两个时间段是否存在交集
select * from test_table where(startTime > a AND startTime < b) OR (startTime < a AND endTime > b) OR(endTime > a AND endTime < b)或者用union 代替 or原创 2021-09-03 19:54:43 · 1245 阅读 · 0 评论 -
mysql触发器中包含select语句
在mysql的触发器中,如果直接写select * from d_shop_ware 会报错Not allowed to return a result set from a trigger查找原因是:MYSQL5以后,不允许触发器返回任何结果,因此使用into @变量名,将结果赋值到变量中,用select调用即可如下sql语句,@flag_price_copy就可以进行值的判断select b.flag_price into @flag_price_copy from `dst_111yao_do原创 2021-09-06 14:51:53 · 3110 阅读 · 0 评论 -
mysql中elseif中如果定义不做任何事情怎么写
如果elseif中没有任何操作,then后面如果什么都不写是报错的可以这样解决:对原数据进行一条更新操作,随便改一些字段,改为原数据字段都可以elseif exists(select * from `dst_111yao_doms`.`d_price_upt` where olshopid = NEW.olshopid and tfid = NEW.pfid and warecode = NEW.outter_id and skuid = NEW.sku and `status` = '2') the原创 2021-09-06 14:54:38 · 2041 阅读 · 0 评论 -
mysql触发器中监控字段的改变
mysql的触发器分为多种,INSERT或UPDATE或DELETE触发器比如使用UPDATE触发器的时候,是整条数据改变后就会触发那么检测单个字段的改变,可以有如下写法if NEW.nor_price <> OLD.nor_price then update `dst_111yao_doms`.`d_price_upt` set price = NEW.nor_price , `status` = '0' , createtime = now() where olshopid原创 2021-09-06 14:57:55 · 3915 阅读 · 0 评论 -
mysql拷贝数据
insert和select配合使用,可以将一个表的数据拷贝到另一个表中INSERT INTO clone_tbl (apiref_id, apiref_title, apiref_author, submission_date) SELECT apiref_id,apiref_title, apiref_author,submission_date原创 2021-09-09 11:09:16 · 1403 阅读 · 0 评论 -
mysql if else 嵌套
BEGIN IF 条件 THEN IF 条件 THEN ELSEIF 条件 THEN ELSEIF 条件 THEN ELSE END If; ELSE IF 条件 THEN ELSEIF 条件 THEN原创 2021-09-06 14:59:01 · 2303 阅读 · 0 评论 -
mysql触发器案例
包含的触发器内容挺全面的,记录一下delimiter $$use `dst_111yao_doms`$$drop trigger /*!50032 IF EXISTS */ `d_shop_ware_price_update`$$create /*!50017 DEFINER = 'dstadmin'@'%' */ trigger `d_shop_ware_price_update` after update on `d_shop_ware` for each row原创 2021-09-06 15:03:04 · 1302 阅读 · 0 评论