MySQL_5.5

MySQL

MySQL常用操作

SUBSTRING_INDEX(str,delim,num),其返回在str中第num个delim之前或之后的字符串,若num为正则为向前取,为负则为向后取。


select SUBSTRING_INDEX('abcdefg','d',1);
-- 向前取,返回字符串abc
select SUBSTRING_INDEX('abcdefg','d',-1);
-- 向后取,返回efg
select SUBSTRING_INDEX(SUBSTRING_INDEX('abcdefg','d',-1),'g',1);
-- 取中间,返回ef

-- replace替换范例
select id,
REPLACE(paramObj,CONCAT(',"header":{',SUBSTRING_INDEX(SUBSTRING_INDEX(paramObj,'{',-1),'}',2)),'') as opt
from RemoteOperationCmdHistory limit 1;

MySQL复制

MySQL设置参数

MySQL性能分析

其它

MySQLslowlog

Other

DELIMITER $$ 
CREATE PROCEDURE cursordemo(INOUT average_goals FLOAT)
BEGIN
DECLARE done INT DEFAULT FALSE;
DECLARE matches int DEFAULT(0);
DECLARE goals int DEFAULT(0);
DECLARE half_time_goals INT;

DECLARE team_cursor CURSOR FOR SELECT HTHG FROM epl.football WHERE (FTR = "H");    
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

OPEN team_cursor;
  teams_loop: LOOP
    FETCH team_cursor INTO half_time_goals;
    IF done THEN LEAVE teams_loop;
    END IF;
    SET goals = goals + half_time_goals;
    SET matches = matches + 1;
  END LOOP teams_loop;
  SET average_goals = goals / matches;
CLOSE team_cursor;

END

$$ DELIMITER;

读写分离

mysql时间类型