比较php和MSSQL中的日期以从现在开始检索最近的日期

时间:2013-01-23 15:50:21

标签: php sql-server date datediff

我想将MMSQL日期一起比较,我想从现在开始检索最近的日期。

以下是我的mssql日期数据示例:2013-01-23 09:34:03.000

我的表是这样的:

NAME : myTable
 Column:
 - nameUpdate (VARCHAR(255))
  - date (DATETIME)

这是我到目前为止所做的,但它不起作用。

$query = "SELECT date FROM myTable";
$res_mnem = mssql_query($query) or die(mssql_get_last_message() . "[ " . $query . " ]");  
        $latestDate = "";    
        if (!mssql_num_rows($query)) {

             while ($row = mssql_fetch_array($res_mnem)) {
                if($latestDate == ""){
                  $latestDate = $row["date"];
                }
                elseif($row["date"] > $latestDate){
                   $latestDate = $row["date"];
        }
            }

      }
    echo $latestDate;

感谢所有

1 个答案:

答案 0 :(得分:0)

SELECT TOP 1 DATEDIFF(s, [date], GetDate())
FROM myTable
ORDER BY DATEDIFF(s, [date], GetDate())

这会在您的表中的当前(GETDATE())和[日期]之间进行日期减法,在几秒钟内(如果需要,您可以以低于秒的粒度执行此操作)。它按相同的日期顺序排序,按升序排列。顶部1只选择第一条记录 - 这是由于ORDER BY而最接近当前日期的记录。