sql >> データベース >  >> RDS >> Mysql

PHPのMySQL日付フィールドのオプションの月または日

    多くの場合、このような「多かれ少なかれ正確な」日付が必要です。私は2011-04-01などの日付を使用します。 (正確)、および2011-04 (=2011年4月)および2011 (年のみの日付)アーカイブメタデータ。おっしゃるように、MySQLの日付フィールドは「2011-00-00」を許容しますが、FAQには記載されておらず、問題ありません。
    しかし、MySQL databaseをインターフェースする必要がありました。 ODBC経由 日付フィールドは、「許容される」日付を除いて正しく変換されます(例:「2011-04-00」は、結果のMySQL-ODBC接続ACCESSデータベースで空になります。
    そのため、私は次の結論に達しました。 MySQLの日付フィールドはプレーンなVARCHAR(10)に変換できます フィールド:特定のMySQL日付関数を必要としない限り、正常に機能します。もちろん、php日付関数と細かいdate_php2mysql()関数を使用することもできます。

    MySQLの日付フィールドが必要な場合は、MySQLを使用して複雑なSQLクエリが必要な場合のみです。 日付はクエリ自体で機能します(ただし、このようなクエリは「多かれ少なかれ正確な」日付では機能しなくなります!...)

    結論 :「多かれ少なかれ正確な」日付については、現在MySQLの日付フィールドを破棄し、プレーンなVARCHAR(10)を使用しています fieldwith aaaa-mm-jj フォーマットされたデータ。シンプルは美しいです。



    1. Flask、Connexion、SQLAlchemyを使用したPython REST API –パート2

    2. CodeIgniterとAJAXフォームの送信

    3. 2つのデータベースの構造を比較しますか?

    4. MySQLの複数の結合を1つのクエリで実行しますか?