私は次の問題に遭遇しました:
MS SQL Server からデータベースを移行する必要がありました。いくつかのフィールドには、そのままでは保存されない日付値が含まれていました。たとえば、「validfrom」および「validto」フィールドを持つ「offers」フィールドがありました。悲しいことに、彼らはそのタイプの入力にテキスト フィールド (varchar) を使用しており、現在、日付で適切にフィルター処理するのに苦労しています。例は次のとおりです。
datefrom = "21.01.2012"
dateto = "21.05.2012"
今、古いエントリを日付順に並べ替えようとしています
$curDate = date('d.m.Y'); // Outputs 19.03.2013
私のPHP PDOでは、次のクエリを使用します
$query = "SELECT * from mytable where validtill >= '$curDate'"
出力する
$query = "SELECT * from mytable where validtill >= '19.03.2013'"
まだ、2011 年からの日付エントリで古いエントリを取得しています。何かが足りないと思います。文字列を「日付」として比較できない可能性があります。フィールドを vharchar から date に変更しようとしましたが、そうすると、インポートされたデータ全体が台無しになります。
何かアドバイス?
ありがとう!