2016-07-04 10 views
1

06/30/1986のようなMySQLデータベースのレコードです。形式 "m/d/Y"を使用します。WhereBetweenはLaravelで正しく機能しません

私は、関数を使用してデータを取得しようとしている:

$users = DB::table('users') 
      ->whereBetween('date', [07/04/1960, 07/04/2016]) 
      ->get(); 

しかし、DBからレコードがこのクエリでは表示されません。

+0

'[07/04/1960、07/04/2016]'これはどの言語ですか?あなたの配列要素はどのような型ですか? '['1960-04-07'、 '2016-04-07']' – Alex

+0

のような良い文字列の値を渡してみてください_ MySQLデータベースのレコードは06/30/1986_のように見えます。 'DATE'? 'VARCHAR'? – Alex

+0

VARCHARですが、私もDATEを試しました。 – Alex

答えて

1

列タイプを試してみては、DATEにVARCHARから変更し、 "Y-M-D" の形式、およびその作業を変更しました!

1

MySQLのDBに

use Carbon\Carbon; 

$first = Carbon::createFromDate(1960,4,7); 
$second = Carbon::createFromDate(2016,4,7); 

$users = DB::table('users') 
      ->whereBetween('date', [$first->toDateTimeString(), $second->toDateTimeString()]) 
      ->get(); 
+0

ありがとうございますが、これは動作しません。 – Alex

関連する問題