PEMBATAS $$;
DROP FUNGSI JIKA ADA `radius`.`fun_split`$$
CREATE DEFINER=`root`@`% ` FUNCTION `fun_split`(nm varchar(100)) RETURNS varchar(500) CHARSET latin1
MEMBACA DATA SQL
MULAI
nyatakan saya tertarik;
nyatakan rtn int;
nyatakan rtn1 int;
deklarasikan detik varchar(10);
mendeklarasikan rtnstr varchar(500);
atur saya=1;
atur rtnstr='';
SAAT saya <panjang(nm) LAKUKAN
atur rtn= ascii(substring(nm,i,1));
JIKA rtn>127 MAKA
setel rtn1= ascii(kanan(substring(nm,i,2),1));
JIKA rtn1> 127 MAKA
JIKA i<panjang(nm)-1 MAKA
JIKA (ascii(kanan(substring(nm,i,3),1))>127 dan ascii(kanan(substring(nm,i,4),1))>127) MAKA
set sec=concat(kanan(concat('00',rtn-160),2),kanan(concat('00',rtn1-160),2),kanan(concat('00',ascii(kanan(substring (nm,i,3),1))-160),2),kanan(concat('00',ascii(kanan(substring(nm,i,4),1))-160),2),' ');
KALAU TIDAK
atur detik='';
AKHIR JIKA;
KALAU TIDAK
atur detik='';
AKHIR JIKA ;
KALAU TIDAK
set detik=concat(char(rtn),char(rtn1));
AKHIR JIKA;
SETEL saya = saya + 1;
KALAU TIDAK
JIKA i<panjang(nm)-1 MAKA
JIKA (ascii(kanan(substring(nm,i,2),1))>127 dan ascii(kanan(substring(nm,i,3),1))>127) MAKA
set detik=concat(char(rtn),' ');
KALAU TIDAK
atur detik=char(rtn);
AKHIR JIKA;
KALAU TIDAK
JIKA (ascii(kanan(substring(nm,i,2),1))>127 dan ascii(kanan(substring(nm,i,3),1))>127) MAKA
atur detik=char(rtn);
KALAU TIDAK
set sec=char(rtn,ascii(kanan(substring(nm,i,2),1)));
AKHIR JIKA;
AKHIR JIKA;
AKHIR JIKA;
setel rtnstr=concat(rtnstr,detik);
SETEL saya = saya + 1;
BERAKHIR SEMENTARA;
KEMBALI rtnstr;
AKHIR$$
PEMBATAS ;$$