C# SQL;加号+或减号–代替日期(ASP.NET-C)
我正在开发ASP.NET_C应用程序 我正在网格视图上从SQL中提取一些日期 但我不喜欢这些日期,而是喜欢看今天的日期是如何“加+”或“减-”的 比如说 今天的日期是=11/02/2012 如果SQL的日期是2012年2月7日,我希望我的网格显示-4 或 如果SQL的日期是2012年2月17日,我希望我的网格显示+6 请帮帮我,我该怎么做 这是我正在使用的SQL查询C# SQL;加号+或减号–代替日期(ASP.NET-C),c#,asp.net,sql,date,datediff,C#,Asp.net,Sql,Date,Datediff,我正在开发ASP.NET_C应用程序 我正在网格视图上从SQL中提取一些日期 但我不喜欢这些日期,而是喜欢看今天的日期是如何“加+”或“减-”的 比如说 今天的日期是=11/02/2012 如果SQL的日期是2012年2月7日,我希望我的网格显示-4 或 如果SQL的日期是2012年2月17日,我希望我的网格显示+6 请帮帮我,我该怎么做 这是我正在使用的SQL查询 SELECT MAX(AmountPay.DateUpto) AS [ PaidUpTo], TimeTable.Name, Ti
SELECT MAX(AmountPay.DateUpto) AS [ PaidUpTo], TimeTable.Name, TimeTable.Ref, TimeTable.Time11to12 FROM AmountPay FULL OUTER JOIN TimeTable ON AmountPay.Ref = TimeTable.Ref WHERE (TimeTable.Time11to12 = @Time11to12) GROUP BY TimeTable.Name, TimeTable.Ref, TimeTable.Time11to12
AmountPay.DateUpto是我希望看到的日期+或-
有人建议我使用Datediff函数;我使用Datediff函数计算出生日期后的年龄,但我无法计算;在这种情况下我如何使用它
提前感谢您可以使用
因为您使用的是MySQL,所以select语句应该如下所示:
SELECT DATEDIFF(CURDATE(), MAX(AmountPay.DateUpto)) AS [ PaidUpTo],
TimeTable.Name,
......
DATEDIFF将为您提供像-1、1、-5…这样的值,并且您的DataGridView应该可以很好地显示这些值。您不需要大小写。如果您将DATEDIFF与dd一起使用,它将自动返回带有适当+/-符号的天数差。因为您没有显示希望显示天数差的位置,或者列名称如果您想与今天的日期有所不同,我无法提供实际的SQL帮助。
SELECT DATEDIFF(day,GetDate(), MAX(AmountPay.DateUpto)) AS [ PaidUpTo], TimeTable.Name, TimeTable.Ref, TimeTable.Time11to12 FROM AmountPay FULL OUTER JOIN TimeTable ON AmountPay.Ref = TimeTable.Ref WHERE (TimeTable.Time11to12 = @Time11to12) GROUP BY TimeTable.Name, TimeTable.Ref, TimeTable.Time11to12
SELECT DATEDIFF(day,GetDate(), MAX(AmountPay.DateUpto)) AS [ PaidUpTo], TimeTable.Name, TimeTable.Ref, TimeTable.Time11to12 FROM AmountPay FULL OUTER JOIN TimeTable ON AmountPay.Ref = TimeTable.Ref WHERE (TimeTable.Time11to12 = @Time11to12) GROUP BY TimeTable.Name, TimeTable.Ref, TimeTable.Time11to12