Eloquent 中的什么方法或 Laravel 5.2 中的查询生成器用于唯一值
What method in Eloquent or Query Builder in Laravel 5.2 for unique values
场景如下
Table:用户
id | name | grade
------ | ------|------
1 | Mark | a
2 | Earl | a
3 | John | c
4 | Mike | d
5 | Matt | e
我想要做的是填充 non-repeating 或 non-duplicate 的成绩
所以它应该只显示
c
d
e
我已经走到这一步了
控制器
$grades = user::select('grade')
->distinct()
->get();
blade
@foreach ($grades as $grade)
{{ $grade }}<br>
@endforeach<br><br>
然而,这个查询给出了这个
一个
c
d
e
试试这个查询:-
$grades = DB::select(DB::raw('SELECT grade , count(grade) as gradecount FROM users group
by grade having gradecount = 1'));
OR
$grades = DB::table('users')
->select('*', DB::raw('COUNT(grade) as gradecount'))
->groupBy('grade')
->having('gradecount', '=',1)
->get();
希望对您有所帮助!
场景如下
Table:用户
id | name | grade
------ | ------|------
1 | Mark | a
2 | Earl | a
3 | John | c
4 | Mike | d
5 | Matt | e
我想要做的是填充 non-repeating 或 non-duplicate 的成绩
所以它应该只显示
c
d
e
我已经走到这一步了
控制器
$grades = user::select('grade')
->distinct()
->get();
blade
@foreach ($grades as $grade)
{{ $grade }}<br>
@endforeach<br><br>
然而,这个查询给出了这个
一个
c
d
e
试试这个查询:-
$grades = DB::select(DB::raw('SELECT grade , count(grade) as gradecount FROM users group
by grade having gradecount = 1'));
OR
$grades = DB::table('users')
->select('*', DB::raw('COUNT(grade) as gradecount'))
->groupBy('grade')
->having('gradecount', '=',1)
->get();
希望对您有所帮助!