1

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;

ありがとうございます

4

1 に答える 1

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

これは、テーブルの Current (GETDATE()) と [date] の間の日付減算を秒単位で行います (必要に応じて、秒単位よりも低い粒度で行うことができます)。同じ datediff で昇順で並べ替えます。上位 1 は、最初のレコードのみを選択します。これは、ORDER BY により、現在の日付に最も近いレコードです。

于 2013-01-23T16:17:42.040 に答える