【问题标题】:How to get data from database using date?如何使用日期从数据库中获取数据?
【发布时间】:2019-07-11 12:17:51
【问题描述】:

我想根据当前日期选择和显示数据。我已经为此选择了查询,但它不起作用

这是我在表格上的日期数据:

这是我的查询:

$now = date('Y-m-d');
$trans = FA_transaction::where('assign_date', $now)->get();

当我执行查询时,我没有得到任何数据

【问题讨论】:

标签: php sql laravel laravel-5 php-7


【解决方案1】:

你可以使用它

 $now = Carbon::today();
 $trans = FA_transaction::where('assign_date', $now)->get();

 $now = Carbon::now()->format('Y-m-d');
 $trans = FA_transaction::where('assign_date', $now)->get();

【讨论】:

  • 你好,我已经尝试过你的代码并工作了。当我执行它时,我还有另一个具有不同查询的选择数据,例如$trans = FA_transaction::where('worker_id', $getWorker->id) ->whereDate('assign_date', Carbon::today()) ->get();,我也没有任何数据
  • 是否显示任何错误或为空?如果显示为空,请检查您的输入 1st
  • 请分享完整的表格
【解决方案2】:

你可以这样做:

$trans = FA_transaction::whereDate('date', Carbon::today())->get();

或者如果你想使用 MySQL 的 CURDATE 函数,你可以这样做:

$trans = FA_transaction::->whereRaw('Date(date) = CURDATE()')->get();

【讨论】:

  • 你好@MihirBhende,当我像这样添加where('worker_id', $getWorker->id) $trans = FA_transaction::where('worker_id', $getWorker->id) ->whereDate('assign_date', Carbon::today()) ->get(); 我也没有得到任何数据
  • 它是否包含特定选择的任何数据。您的系统中还有时区吗?
  • 感谢@MihirBhende,我发现了我的错误,它现在可以工作了
【解决方案3】:

您可以使用 whereDate 函数根据日期过滤掉记录试试这个!

$now = date('Y-m-d');
$trans = FA_transaction:: whereDate('date','=',$now)->get();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-21
    • 2019-12-14
    • 2019-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-03
    相关资源
    最近更新 更多