codecamp

Laravel 8 附加 Where 语句

whereBetween / orWhereBetween

whereBetween 方法验证字段值是否在给定的两个值之间:

$users = DB::table('users')
           ->whereBetween('votes', [1, 100])
           ->get(); 
whereNotBetween / orWhereNotBetween

whereNotBetween 方法用于验证字段值是否在给定的两个值之外:

$users = DB::table('users')
                    ->whereNotBetween('votes', [1, 100])
                    ->get(); 
whereIn / whereNotIn / orWhereIn / orWhereNotIn

whereIn 方法验证给定列的值是否包含在给定数组中:

$users = DB::table('users')
                    ->whereIn('id', [1, 2, 3])
                    ->get(); 

whereNotIn 方法验证给定列的值是否不存在给定的数组中:

$users = DB::table('users')
                    ->whereNotIn('id', [1, 2, 3])
                    ->get(); 

技巧:如果要在查询中添加大量整数绑定,则可以使用 whereIntegerInRawwhereIntegerNotInRaw 方法来大大减少内存使用。

whereNull / whereNotNull / orWhereNull / orWhereNotNull

whereNull 方法验证指定的字段必须是 NULL:

$users = DB::table('users')
                    ->whereNull('updated_at')
                    ->get(); 

whereNotNull 方法验证指定的字段肯定不是 NULL:

$users = DB::table('users')
                    ->whereNotNull('updated_at')
                    ->get(); 

whereDate / whereMonth / whereDay / whereYear / whereTime

whereDate 方法用于比较字段值与给定的日期(年月日):

$users = DB::table('users')
                ->whereDate('created_at', '1989-01-09')
                ->get(); 

whereMonth 方法可用于将字段值与一年中的特定月份进行比较:

$users = DB::table('users')
                ->whereMonth('created_at', '01')
                ->get(); 

whereDay 方法可用于将字段值与一个月中的几号进行比较:

$users = DB::table('users')
                ->whereDay('created_at', '09')
                ->get(); 

whereYear 方法用于比较字段值与指定的年份:

$users = DB::table('users')
                ->whereYear('created_at', '1989')
                ->get(); 

whereTime 方法用于比较字段值与指定的时间(时分秒):

$users = DB::table('users')
                ->whereTime('created_at', '=', '11:20:45')
                ->get(); 

whereColumn / orWhereColumn

whereColumn 方法用于比较两个字段的值是否相等:

$users = DB::table('users')
                ->whereColumn('first_name', 'last_name')
                ->get(); 

你也可以传入一个比较运算符:

$users = DB::table('users')
                ->whereColumn('updated_at', '>', 'created_at')
                ->get(); 

你也可以给 whereColumn 传递一个数组,他们之间会使用 and 运算符连接:

$users = DB::table('users')
                ->whereColumn([
                    ['first_name', '=', 'last_name'],
                    ['updated_at', '>', 'created_at'],
                ])->get(); 
Laravel 8 Or 语句
Laravel 8 Where Exists 语句
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Laravel 8 入门指南

Laravel 8 基础功能

Laravel 8 前端开发

Laravel 8 安全相关

Laravel 8 综合话题

数据库

Eloquent ORM

测试相关

官方拓展包

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }