mysql经验总结

1.导入文件可能会导入\r或\n,

LOAD DATA LOCAL INFILE 'E:/gitlab/path/file1.txt' INTO TABLE `test`.`table1` FIELDS TERMINATED BY '\t'(Id,str) 

需要加一下验证,UPDATE table1 SET str= REPLACE(REPLACE(str,'\r',''),'\n','')

2.嵌套中一定要写正确 列名字,否则,会一直执行不会结束:eg:

 DELETE
FROM
  `crawler_seeds_tagmap` 
WHERE seedId IN 
  (SELECT 
    zgyid
  FROM
    zgyupdatetags20180806) 
  AND tagid IN 
  (SELECT 
    id 
  FROM
    `crawler_seeds_tags` 
  WHERE DimentionInfo LIKE '%中改院%')

3.concat_ws尽量代替concat,这样分隔符不会产生多个.

4.进行join操作后要用group by查询,这样才会产生多个结果

5.while(locate(';',str)>0)这种操作保证str中包含';',否则不会反悔结果,,可以在循环前先确保str中包含';'

6.对于on后面加and还是where,如果加and,表示和on一起查询,如果加where表示先进行on查询,再用where筛选,如果只加and,那么作用的都是

UPDATE 
  new_crawler_seeds_table AS a  
  LEFT JOIN 
     b   ON a.id = b.id

SET a.`str` = b.str WHERE 1=1 AND a.str1 LIKE '%str%' 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值