Varför använder du | i mönstret? Varför + ?
SELECT * FROM table WHERE (data REGEXP '\|49213[A-Z]\|')
Om du vill ha flera:
SELECT * FROM table WHERE (data REGEXP '\|49213[A-Z]+\|')
eller:
SELECT * FROM table WHERE (data REGEXP '[|]49213[A-Z][|]')