Во-первых, like
не поддерживается between
. Это просто не имеет смысла.
Во-вторых, вы не должны использовать функции string для дат. MySQL имеет много действительно полезных строковых функций.
И, наконец, вы можете просто использовать регулярные сравнения:
where date >= '2019-01-01' and date < '2019-02-02'
По иронии судьбы, это будет работать, когда столбец даты будет сохранен (правильно) как date
. А также то, что он хранится как datetime
. И в виде строки (с учетом указанного вами формата).