Sql ,因为'2016-10-28'是2016-10-28 00:00:00,除非date\u列中的时间恰好是00:00:00,否则它们永远不会相等。列中没有时间,只有日期。 select * FROM table where CONVERT(cha

Sql ,因为'2016-10-28'是2016-10-28 00:00:00,除非date\u列中的时间恰好是00:00:00,否则它们永远不会相等。列中没有时间,只有日期。 select * FROM table where CONVERT(cha,sql,sql-server,sql-server-2012,Sql,Sql Server,Sql Server 2012,,因为'2016-10-28'是2016-10-28 00:00:00,除非date\u列中的时间恰好是00:00:00,否则它们永远不会相等。列中没有时间,只有日期。 select * FROM table where CONVERT(char(10), date_column,126) = convert(char(10), '2016-10-28', 126) CONVERT(varchar(10), date_column,126) = '2016-10-28' ...


,因为
'2016-10-28'
2016-10-28 00:00:00
,除非
date\u列中的时间恰好是
00:00:00
,否则它们永远不会相等。列中没有时间,只有日期。
  select *
  FROM table
  where CONVERT(char(10), date_column,126) = convert(char(10), '2016-10-28', 126)
 CONVERT(varchar(10), date_column,126) = '2016-10-28'
... WHERE date_column >= '2016-10-28 00:00:00' AND date_column < '2016-10-29 00:00:00'
where date_column = convert(date, '2016-10-28', 126)
declare @date date
set @date = CONVERT(date, '2016-10-28', 126)
select @date