MySQL függvény kérdés

Van egy ilyen tárolt függvényem:

CREATE FUNCTION SPLIT_STR( x VARCHAR(255), delim VARCHAR(12), pos INT)

RETURNS VARCHAR(255)
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos), LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),delim, '');

Hogyan bővítsem ki úgy, hogy abban az esetben, ha nincs delimiter, akkor az eredeti x stringgel térjen vissza? MySQL függvény szintaxissal még hadilábon állok... :(

Hozzászólások

Elnézést, ez tárgytalan lett, a SUBSTRING_INDEX() is megcsinálta, ami nekem kellett. :) DE azért lehet rágódni a problémán, hátha valakinek még jól jön.
--
Coding for fun. ;)

RETURN if(length(delim) > 0, REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos), LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),delim, ''), x);

SPAMtelenul - POP3 spamszuro szolgaltatas

Nem, rosszul fogalmaztam ezek szerint...
Lássunk egy konkrét példát:
'elso|masodik' esetében a split_str('elso|masodik','|',2) visszatérő értéke a 'masodik'
viszont:
split_str('elso','|',2) üres lesz. Ilyen esetben kéne vizsgálni, hogy van-e '|' a bemenetben, ha pedig nincs, térjen vissza az eredeti stringgel.

--
Coding for fun. ;)