однозначно лучше использовать varchar(20).. насколько я знаю разница в том, что поля TEXT на физическом уровне не хранятся в записях таблице.. используется указатель на область памяти, что позволяет хранить большие объемы информации в этом поле.. отсюда вытекает что использование VARCHAR быстрее