我nvarchar(50)
类型的列名Endtime
,我试图通过使用下面的查询来获取max(Endtime)
:最大(日)不工作的nvarchar的SQL Server中
select COALESCE(CONVERT(nVARCHAR(50), MAX(EndTime), 103), '-') AS EndTime from dbo.vwJobHistory
的结果是罚款,只要因为年份是相同的(2015年12月31日),但只要我在年份(01/22/2016)中输入一些数据,查询仍显示最大值。 2015年的日期而不是2016年。
我试过Max(cast(endtime as DateTime))
但这也给转换错误 我该如何解决?提前致谢。
MAX应该应用于DATE而不是NVARCHAR –
在'CONVERT'之前移动'MAX'。如果你有能力适当地改变列Endtime的类型。 –
@Adriano我已经使用了MAX和日期本身.. – Emma