Laravel 如何检索最近上传的值
Laravel how to retrieve the recently uploaded values
我在 mysql 中有一个数据库。我将一组数据从 .csv 文件或 .xls 文件上传到数据库 table。在检索期间,我只需要检索我最近上传到数据库中 table 的一组值。我不应该获取存储在 table 中的所有值。(应该只检索最近上传到 table 的值)。我怎样才能使用 Laravel?
假设您有一个 table/model 命名用户;
$getLatestUsers=Users::orderBy('created_at','desc')->take(5)->get();
这将从数据库中获取 5 条最近的记录。
好吧,这取决于您的考虑 "recent" 但您可以调整这样的功能以满足您的需要:
->where('created_at', '<', Carbon::now()->subMinutes(5)->toDateTimeString())
这将检索最近 5 分钟创建的元素,但 Carbon 提供了多种 substractors。
PD:记得在命名空间声明下添加 use Carbon\Carbon;
。
希望对您有所帮助。
$latest= Users::orderBy('created_at','desc')->take(10)->get();
this will return 10 recent values
(1)
在存储 CSV 数据的 table 和 XML 中,使用迁移创建一个标志来标记您尚未处理的记录,例如is_processed
。给它默认值 0
.
(2)
如果您有已经检索(处理)的数据,请将它们设置为 1
,这样它们就不会再次被处理。您可以根据对您的情况有意义的条件,通过查询手动执行此操作。
(3)
然后,在您存储新数据后,它们将自动设置为is_processed = 0
。这意味着您可以在之后识别它们,如下所示:
$unprocessedData = MyModel::where('is_processed', 0)->get();
如果需要,您也可以订购它们,但一般来说,这是我会采用的方法。
我在 mysql 中有一个数据库。我将一组数据从 .csv 文件或 .xls 文件上传到数据库 table。在检索期间,我只需要检索我最近上传到数据库中 table 的一组值。我不应该获取存储在 table 中的所有值。(应该只检索最近上传到 table 的值)。我怎样才能使用 Laravel?
假设您有一个 table/model 命名用户;
$getLatestUsers=Users::orderBy('created_at','desc')->take(5)->get();
这将从数据库中获取 5 条最近的记录。
好吧,这取决于您的考虑 "recent" 但您可以调整这样的功能以满足您的需要:
->where('created_at', '<', Carbon::now()->subMinutes(5)->toDateTimeString())
这将检索最近 5 分钟创建的元素,但 Carbon 提供了多种 substractors。
PD:记得在命名空间声明下添加 use Carbon\Carbon;
。
希望对您有所帮助。
$latest= Users::orderBy('created_at','desc')->take(10)->get();
this will return 10 recent values
(1)
在存储 CSV 数据的 table 和 XML 中,使用迁移创建一个标志来标记您尚未处理的记录,例如is_processed
。给它默认值 0
.
(2)
如果您有已经检索(处理)的数据,请将它们设置为 1
,这样它们就不会再次被处理。您可以根据对您的情况有意义的条件,通过查询手动执行此操作。
(3)
然后,在您存储新数据后,它们将自动设置为is_processed = 0
。这意味着您可以在之后识别它们,如下所示:
$unprocessedData = MyModel::where('is_processed', 0)->get();
如果需要,您也可以订购它们,但一般来说,这是我会采用的方法。