多くの開発者は、日付を表す VARCHAR 値を MySQL 日付形式に変換する必要性に遭遇します。月や年などの特定の日付コンポーネントを抽出します。この記事では、関連する手順を順を追って説明することで、この一般的な課題の解決策を提供します。
STR_TO_DATE 関数は、文字列を日付値に変換するために一般的に使用される MySQL 関数です。ただし、これを直接使用すると、特に文字列の形式が関数で指定された形式と異なる場合、予期しない結果が生じる可能性があります。
この問題に対処するには、STR_TO_DATE 関数と DATE_FORMAT 関数を組み合わせて使用できます。 DATE_FORMAT を使用すると、日付値を特定の文字列表現にフォーマットできます。
「1/9/2011」のような VARCHAR 値を日付に変換し、月と年のみを抽出します (「YYYYMM」形式) )、次のクエリを使用します:
SELECT DATE_FORMAT(STR_TO_DATE('1/9/2011', '%m/%d/%Y'), '%Y%m');
または、VARCHAR 値が'MM/dd/YYYY' 形式の場合は、次のクエリを使用します:
SELECT DATE_FORMAT(STR_TO_DATE('12/31/2011', '%m/%d/%Y'), '%Y%m');
このアプローチにより、VARCHAR 値が日付に正確に変換され、DATE_FORMAT を使用して必要な日付コンポーネントのみが抽出されます。
以上がMySQL で VARCHAR 日付から月と年を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。