0

このmysqlステートメントを実行すると、mysql updateは一部の行のフィールドデータを更新するのではなく削除します

 UPDATE
    tablename
SET
    date = DATE_FORMAT(STR_TO_DATE(date, "%d/%m/%Y"), "%Y-%m-%d")

$date と $date の間の日付を検索できるように、日付形式を 05/08/2013 から 2013-05-08 に更新しようとしています。

4

3 に答える 3

0

MySQL STR_TO_DATE() は、文字列と特定のフォーマット文字列を引数として取り、日時値を返します。

文字列として指定された日付、時刻、または日時の値が不正な場合、関数は NULL を返すため、最初に select ステートメントのすべての値をチェックして、null が返されるかどうかを確認します。

 Select DATE_FORMAT(STR_TO_DATE(date, "%d/%m/%Y"), "%Y-%m-%d") from tablename
于 2013-05-09T08:37:40.357 に答える