Попробуйте,
DECLARE @Temp_Table TABLE
(
Id INT,Name VARCHAR(10),Created_Date DATETIME
)
INSERT INTO @Temp_Table
SELECT 1,'AAA','10/20/2019 3:00:00 ' UNION ALL
SELECT 2,'BBB','10/20/2019 15:00:00' UNION ALL
SELECT 3,'CCC','10/21/2019 4:00:00 ' UNION ALL
SELECT 4,'DDD','10/21/2019 18:00:00'
DECLARE @DATE_TIME DATETIME='10/21/2019 18:00:00'
SELECT *
FROM @Temp_Table
WHERE Created_Date BETWEEN IIF(DATEPART(HOUR,@DATE_TIME) >12,CAST(CAST(@DATE_TIME AS DATE) AS DATETIME),DATEADD(HOUR,12,DATEADD(DAY,-1,CAST(CAST(@DATE_TIME AS DATE) AS DATETIME))))
AND IIF(DATEPART(HOUR,@DATE_TIME) >12,DATEADD(HOUR,12,CAST(CAST(@DATE_TIME AS DATE) AS DATETIME)),CAST(CAST(@DATE_TIME AS DATE) AS DATETIME))