我有四个表(在[]列中):
users [id]
products [id]
productRatings [id,value,user,product]
comments [id,product,user]
我想选择/并最终删除productRatings,其中该产品的同一用户没有相关评论.也就是说,如果用户对产品进行了评级但未评论,则应删除该评级.
我相信我可以通过使用两个查询来实现这一点,首先:
SELECT user, product FROM productRatings
Run Code Online (Sandbox Code Playgroud)
然后为每一行:
SELECT COUNT(*) FROM comments WHERE product=productRatings.product AND user=productRatings.user
Run Code Online (Sandbox Code Playgroud)
然后像
if $queryAbove==0 : DELETE FROM productRatings WHERE id=productRatings.id
Run Code Online (Sandbox Code Playgroud)
我想通过JOIN解决这个问题,并通过示例了解更多信息,而不是通过JOIN教程.
使用Laravel 5.3,
在我的方法中我使用
setlocale(LC_TIME, 'hr-HR');
dd(Carbon::now()->formatLocalized('%A'));
Run Code Online (Sandbox Code Playgroud)
但我得到了Sunday而不是CroatianWordForSunday.
我尝试使用Carbon::setLocale('hr'),而不是setlocale(),但我仍然得到Sunday.
在我的config/app.php文件中,我已设置'locale' => 'hr'.
需要注意的是,diffForHumans()如果我使用Carbon的方法已成功翻译Carbon::setLocale('hr').
最后,我要做的就是将8号转换为8月份,但是克罗地亚语.我总是可以手动将1月改为Siječanj等等,但如果可以使用一些PHP或Carbon的方法来保持我的代码简洁,那将会很好.
谁能帮我正确回答这个问题。
我有一个Concert模型和另一个Location模型。演唱会属于一个地点。位置表有一个空间点字段。
我需要做三件事:
到目前为止,我已成功设置数据库并获取距用户一定距离的音乐会,如下所示:
$condition = ($lat != null && $lon != null && $distance != null);
Concert::when($condition, function ($query) use ($distance,$lat,$lon) {
return $query->whereHas('location', function($query) use ($distance,$lat,$lon) {
$query->whereRaw('st_distance(location,POINT('.$lat.','.$lon.')) < '.$distance);
});
})
->get();
Run Code Online (Sandbox Code Playgroud)
你能帮我如何st_distance在视图中显示它吗?
我如何按距离排序?
正如我在以度为单位的$distance文档中读到的那样,获取英里/公里的正确方法是什么?st_distance
mysql ×2
php ×2
datetime ×1
distance ×1
join ×1
laravel ×1
laravel-5.3 ×1
locale ×1
php-carbon ×1
spatial ×1