2011-01-07 16 views
0

現在解析日は

最小/最大年齢を取得しようとすると、すべての日付がMM/DD/YYYYでフォーマットされているMLSデータ・ダンプでの作業で作業することができます
 MIN(DateDiff(NOW(), idx_common.list_date))) AS listage_min, 
     MAX(DateDiff(NOW(), idx_common.list_date))) AS listage_max 

明らかに、idx_common.list_dateが前記フォーマットになっているため、これは機能しません。

アイデア?

答えて

2

str_to_dateを使用してidx_common.list_dateを変換してください。

MIN(DateDiff(NOW(), str_to_date(idx_common.list_date,'%m/%d/%Y')))) AS listage_min, 
MAX(DateDiff(NOW(), str_to_date(idx_common.list_date,'%m/%d/%Y')))) AS listage_max 
2

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_str-to-dateには、あなたが求める答えが含まれています。

ただし、可能な場合は、データベースの文字列の代わりに実際のDATETIME列を使用することを検討してください。

+0

データが自分のコントロールではなく、単に動作させようとしています。 – jondavidjohn

+0

十分な公正 - 自分自身でその状況になっていたので、可能ならばifを追加しました。時々、あなたが持っているデータで作業する必要があります。私がリンクしているstr_to_date関数を使うだけで大丈夫です。 – kander

0

使用のJavaやC#または/日付の文字列を分割して、mysqlのクエリを実行する前に、mysqlのことで期待される形式に日付を並べ替えるために何か。