Начав разбираться, стало понятно следующее — если Вам нужно применить оператор between, который выбирает при запросе все значения из заданного диапазона (включая границы), то с датами и числовыми значениями не возникает трудностей, а вот с текстовыми строками всё иначе т.к. значение верхней границы диапазона не будет включено в выборку, если оно не указано точно.
Насколько это формат vc не знаю, но почему table1, нет более подходящего названия, чтобы понять про что это таблица и почему она денормализована?)
Ну и если вы в запросах функции используете почему в between тоже применить и тогда будет читаемо?
Более простое и быстрое решение через LIKE:
SELECT * FROM table1
WHERE model LIKE '[A-D]%'