girilen tarihin aynının ilk gününü mü bulmak istiyorsun? bunu DATEADD(MONTH, DATEDIFF(MONTH, 0, tarih_parametresi), 0) ile bulabilirsin.
DECLARE @TARIH_PARAMETRESI DATETIME
SET @TARIH_PARAMETRESI = '20180123' -- bu gün tamamen dahil olsun istiyorsan ve tarih alanın saat içeriyorsa FORMAT('23.01.2018 23:59:59', 'dd.MM.yyyy HH:mm:ss') şeklinde kullanmalısın
SELECT *
FROM TABLOMUZ
WHERE TARIH_ALANIMIZ BETWEEN DATEADD(MONTH, DATEDIFF(MONTH, 0, @TARIH_PARAMETRESI), 0) AND @TARIH_PARAMETRESI
0