ホームページ >データベース >mysql チュートリアル >MySQL で VARCHAR 日付から月と年を効率的に抽出する方法は?
MySQL での VARCHAR から日付への変換: 月と年の抽出
MySQL では、VARCHAR 文字列を変換する必要がある状況が発生することがあります。日付を日付データ型に表現します。計算に使用するために日付から月と年のみを抽出する必要がある場合は、正しいアプローチに従うことが重要です。
適切な形式で STR_TO_DATE を使用する
VARCHAR 文字列を日付に変換しようとする場合、STR_TO_DATE 関数を使用するのが一般的な方法です。ただし、予期しない結果を回避するには、正しい形式文字列を指定することが重要です。
たとえば、入力文字列「1/9/2011」を指定すると、次のクエリは実行されません。
SELECT STR_TO_DATE(CYOApp_oilChangedDate, '%m/%Y') FROM CYO_AppInfo
目的の出力が得られます。このフォーマット文字列は、「MM/YYYY」形式のデータを必要としますが、入力と一致しません。
正しい変換
入力文字列を正しく変換するには日付の場合は、正しい形式文字列を次のように指定する必要があります:
SELECT date_format(str_to_date('1/9/2011', '%d/%m/%Y'), '%Y%m')
この形式文字列「%d/%m/%Y」は、入力文字列が「DD/MM/YYYY」形式に従っていることを示します。
または、次のクエリを使用することもできます:
SELECT date_format(str_to_date('12/31/2011', '%m/%d/%Y'), '%Y%m')
フォーマット文字列内の日と月の順序は、入力文字列内の順序と一致する必要があることに注意してください。
以上がMySQL で VARCHAR 日付から月と年を効率的に抽出する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。