sql >> Database >  >> RDS >> Mysql

Match twee mysql-cols op alfa-tekens (getallen in hetzelfde veld negeren)

Hiervoor moet u waarschijnlijk een aangepaste functie schrijven. Als je het in MySQL wilt doen, kun je een opgeslagen functie als volgt maken:

DELIMITER $$

drop function if exists alpha_chars_only $$

create function alpha_chars_only (p_string text) returns text
begin
  declare v_return_val text default '';
  declare v_iter int unsigned default 1;
  declare v_length int unsigned default 0;
  declare v_char char(1) default null;

  set v_length = char_length(p_string);

  while (v_iter <= v_length)
  do
    set v_char = substring(p_string,v_iter,1);
    if (v_char REGEXP '[a-z]')
    then
      set v_return_val = concat(v_return_val,v_char);
    end if;
    set v_iter = v_iter + 1;
  end while;

  return v_return_val;
end $$

DELIMITER ;



  1. Hoe voer ik privéprocedures uit in een Oracle-pakket?

  2. Rijwaarden weergeven als kolommen in MySQL

  3. Inconsistent transponeren

  4. Hoe kan ik een migratie uitvoeren in laravel 5.5?