2016-11-29 11 views
0

私は現在、月の列と年の列を持つデータベースを扱っています。どちらもテキストです。月は「1月」に格納され、年は「2016」となります。Mysqlテキストを日付に変換する

これらを連結して日付型に変換するための推奨事項はありますか?

+0

あなたはどのようなアーティスト同士のコラボレーションを期待していますか? –

+0

は月と年が別の列または単一の列にありますか? – Balan

+0

は、適切なデータサンプルと期待される結果を表示します – scaisEdge

答えて

1

このようなクエリを使用できます。あなたは、あなたのフィールド名に文字列を変更する必要があります。

サンプル

select STR_TO_DATE(concat('2016',' ','April','1'), '%Y %M %D'); 

結果

2016-04-01 
0

これが私の作品:

select convert(date,(concat('January',' ','2016'))) 
0
$months = [ 
    'january' => 1, 
    'february' => 2, 
    'march'  => 3, 
    'april'  => 4, 
    'may'  => 5, 
    'june'  => 6, 
    'july'  => 7, 
    'august' => 8, 
    'september' => 9, 
    'october' =>10, 
    'november' =>11, 
    'december' =>12 
    ]; 

    $year  = 2016; 
    $month_text = 'january'; 
    $day  = 1; 

    if($months[strtolower($month_text)]<10){ 
     $month = '0'.$months[strtolower($month_text)]; 
    }else{ 
     $month = $months[strtolower($month_text)]; 
    } 
    if($day<10){ 
     $day = '0'.$day; 
    }else{ 
     $day = $day; 
    } 


    echo $year.'-'.$month.'-'.$day; 

はdate型でデシベルで新しいフェルドを作成し、DBに挿入します。関数内でこれを折り返してwhileループに入れてもよいでしょうか?

関連する問題