To jest szybsze niż concat
+ substring
rutyna.
select substring(MD5(RAND()),1,20);
Jak testowałem wstawianie losowych danych 1M, md5
rutyna zużywa tylko 1/4 (jeszcze mniej) czas concat
+ substring
rutyna;
Problem polega na tym, że ciąg md5 zawiera tylko 32 znaki, więc jeśli potrzebujesz dłuższego, musisz ręcznie wygenerować więcej ciągów md5 i substring
to sam.