Problema com o comando Between MySQL

Bom dia pessoal, alguém sabe me informar porque que esse comando between está errado?

SELECT * FROM historico WHERE diaVenda BETWEEN ‘20/09/2018’ AND ‘22/09/2018’;

O resultado dessa pesquisa devia trazer só estas datas, mas ela está trazendo todos os valores com datas entre 20/09 a 22/09, na foto ele está trazendo valores de 2019 sendo que especifiquei que queria apenas os de 2018. É algum erro na query?
Obs: Sei que o between não trás o ultimo valor.
image

Qual o tipo de dado da referida coluna? Date ou timestamp?

Se você fala do tipo de variável no campo diaVenda, eu coloquei como varchar. Será que foi esse o problema?

Dá uma olhada na documentação do between e entenda.

Agora que dei uma olhada por cima faz sentido, valeu.