Dlaczego używasz | we wzorze? Dlaczego + ?
SELECT * FROM table WHERE (data REGEXP '\|49213[A-Z]\|')
Jeśli chcesz wiele:
SELECT * FROM table WHERE (data REGEXP '\|49213[A-Z]+\|')
lub:
SELECT * FROM table WHERE (data REGEXP '[|]49213[A-Z][|]')