seltsam. Ich habe deinen Code kopiert, die Kommentare entfernt und den Zusatz zum Datum entfernt, und es kommt bei beiden gut heraus.
BEGIN TRAN
CREATE TABLE t (d DATETIME NOT NULL)
INSERT INTO t VALUES (GETDATE())
SELECT (CONVERT(VARCHAR(50),CONVERT(DATE, d)))
FROM t
SELECT TOP 1 (CONVERT(VARCHAR(50),CONVERT(DATE, d)))
FROM t
ROLLBACK