如何查找两个不同日期的最短和最长日期?

时间:2014-11-14 05:07:30

标签: c# sql-server date

我在整数变量int month =DateTime.Now.Month;中有月份,我在数据库中有两个日期'11/01/2014''11/30/2014'。现在我想在一个字符串中带来最少和更多的日子。我怎样才能实现它。(in database I have Fromdate('11/01/2014') and Todate('11/30/2014')fields)?我是这个领域的新人。

1 个答案:

答案 0 :(得分:0)

您可以使用MinMax函数来查找此内容。使用这些的最佳方法是确保您首先将日期存储为datedatetime值(或类似值),因为从一种类型转换为另一种类型可能是一项昂贵的操作。

样品:

Select Min( MyDateColumn) as "MinDate", Max(MyDateColumn) as "MaxDate"
    From MyTable;

如果它们未存储为日期值的形式,则必须将值转换为日期。例如,如果它存储为varcharchar,则需要执行此操作。如果你不这样做,min和max将根据字符的ascii值计算,而不是根据实际日期计算。

示例(如果可能,请避免):

Select Min( CAST(MyDateColumn as date) ) as "MinDate", 
       Max( CAST(MyDateColumn as date) ) as "MaxDate"
    From MyTable;