Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 根据周和年筛选日期条目_Javascript_Php_Mysql_Laravel - Fatal编程技术网

Javascript 根据周和年筛选日期条目

Javascript 根据周和年筛选日期条目,javascript,php,mysql,laravel,Javascript,Php,Mysql,Laravel,我制作了一个概述页面,显示某个web应用中的所有变化(如所附图片所示) 如图所示,我已经直观地进行了两次输入,用户可以指定发生轮班的年份和星期。但是,我的班次表目前由日期时间格式的开始时间和结束时间组成,例如2020-01-29 15:00:00 以这种方式筛选这些条目的最佳方法是什么?尝试以下SQL查询: SELECT * FROM your_table WHERE YEAR(CREATED_DATE) = 2020 AND WEEK(CREATED_DATE) = 5; 尝试以下SQL查

我制作了一个概述页面,显示某个web应用中的所有变化(如所附图片所示)

如图所示,我已经直观地进行了两次输入,用户可以指定发生轮班的年份和星期。但是,我的班次表目前由日期时间格式的开始时间和结束时间组成,例如2020-01-29 15:00:00

以这种方式筛选这些条目的最佳方法是什么?

尝试以下SQL查询:

SELECT *
FROM your_table
WHERE YEAR(CREATED_DATE) = 2020 AND WEEK(CREATED_DATE) = 5;
尝试以下SQL查询:

SELECT *
FROM your_table
WHERE YEAR(CREATED_DATE) = 2020 AND WEEK(CREATED_DATE) = 5;

您可以使用sql原始查询筛选带有年和周数的结果。 只需在服务器上发送带有过滤器参数(年份、周数)的正确ajax请求 例如:如果用户输入2020年和第34周

$data=YourModel::query()
->其中(…)
->whereRaw('YEAR(created_at)=?',[$request->YEAR])
->whereRaw('dayof year(created_at)介于?和?',[7*($request->weeknumber-1),7*$request->weeknumber])
->get();

希望这对您有所帮助

您可以使用sql原始查询筛选带有年数和周数的结果。 只需在服务器上发送带有过滤器参数(年份、周数)的正确ajax请求 例如:如果用户输入2020年和第34周

$data=YourModel::query()
->其中(…)
->whereRaw('YEAR(created_at)=?',[$request->YEAR])
->whereRaw('dayof year(created_at)介于?和?',[7*($request->weeknumber-1),7*$request->weeknumber])
->get();

希望这对您有所帮助

我们需要查看表格中的内容。您想对其进行哪些筛选?我不明白。我希望该页面仅显示某一周或某一年的条目。这个表看起来是这样的:我们需要查看这个表。你想过滤它吗?我不明白。我希望这个页面只显示某一周或某一年的条目。该表如下所示:请注意,此解决方案在表列上使用函数(与目标值相对应),因此,如果我们真的在寻找“最佳”,那么就不是这样了。@草莓:您提到的“最佳”完全是关于速度/性能的。如果OP是这样的话,当然创建额外的索引列将很容易实现这个目标。但是,如果筛选操作不重要或不经常使用和/或OP不希望或由于任何原因无法添加额外的列,那么使用函数也不算太糟糕,尤其是在表大小很小的情况下。“最佳”实际上取决于各种因素。过滤器选项将被大量使用,但当前系统不会太大/有那么多用户。请注意,此解决方案使用表列上的函数(与目标值相对应),因此如果我们真的在寻找“最佳”,那就不是这样了。@草莓:你提到的“最好”都是关于速度/性能的。如果OP是这样的话,当然创建额外的索引列将很容易实现这个目标。但是,如果筛选操作不重要或不经常使用和/或OP不希望或由于任何原因无法添加额外的列,那么使用函数也不算太糟糕,尤其是在表大小很小的情况下。现实中的“最佳”取决于各种因素。过滤器选项将被大量使用,但当前系统不会太大/有那么多用户。所以我应该将控制器中的此方法链接到过滤器按钮,对吗?是的,您应该为数据过滤设置路线,然后返回过滤后的数据。您可以使用ajax或其他方法来实现这一点,因此我应该将控制器中的此方法链接到“过滤器”按钮,对吗?是的,您应该为数据过滤设置路径,然后返回过滤后的数据。您可以使用ajax或其他方法来实现这一点