首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从Query Builder Laravel中排除记录

是指在使用Laravel框架的Query Builder进行数据库查询时,排除某些特定的记录。

在Laravel中,可以使用whereNot方法来实现排除记录的功能。该方法接受两个参数,第一个参数是要排除的字段名,第二个参数是要排除的值。例如,假设我们有一个users表,其中有一个status字段,我们想要排除statusinactive的记录,可以使用以下代码:

代码语言:php
复制
$users = DB::table('users')
            ->whereNot('status', 'inactive')
            ->get();

上述代码将返回一个包含所有status不为inactive的用户记录的集合。

除了whereNot方法,还可以使用whereNotIn方法来排除多个特定的值。该方法接受两个参数,第一个参数是要排除的字段名,第二个参数是一个数组,包含要排除的值。例如,如果我们想要排除statusinactiveblocked的记录,可以使用以下代码:

代码语言:php
复制
$users = DB::table('users')
            ->whereNotIn('status', ['inactive', 'blocked'])
            ->get();

上述代码将返回一个包含所有status不为inactiveblocked的用户记录的集合。

需要注意的是,以上示例中的DB::table('users')是一个简单的示例,实际使用时应根据具体的数据库表和字段进行调整。

推荐的腾讯云相关产品:腾讯云数据库MySQL、腾讯云云服务器CVM。

腾讯云数据库MySQL:腾讯云提供的一种高性能、可扩展的关系型数据库服务。它具有高可用性、自动备份、数据恢复等特性,适用于各种规模的应用场景。详情请参考:腾讯云数据库MySQL

腾讯云云服务器CVM:腾讯云提供的一种弹性计算服务,可以快速创建和部署云服务器。它具有高性能、高可靠性、灵活扩展等特点,适用于各种应用场景。详情请参考:腾讯云云服务器CVM

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 如何Serilog请求日志记录排除健康检查终结点

    第1部分-使用Serilog RequestLogging减少日志详细程度 第2部分-使用Serilog记录所选的终结点属性 第3部分-使用Serilog.AspNetCore记录MVC属性 第4部分-...Serilog请求日志记录排除健康检查端点(本文) 作者:依乐祝 译文地址:https://www.cnblogs.com/yilezhu/p/12253361.html 原文地址:https...当您有一个访问比较频繁的端点时,这非常有用,因为为每个请求都进行记录几乎没有什么价值。 健康检查访问较频繁 这篇文章的动机来自我们在Kubernetes运行应用程序时看到的行为。...Kubernetes 1.16版开始,存在第三种探针,即startup probe。 在ASP.NET Core 2.2+中提供的健康检查终结点非常适合这些探针。...虽然它没有MVC基础架构的请求所示的那么多-每个请求10个日志,但是即使每个请求只有1个日志(就像我们Serilog.AspNetCore获得的那样)都可能会令人不快。

    1.3K10

    Laravel5.7 Eloquent ORM快速入门详解

    'bar')- cursor() as $flight) { // } 获取单个模型/聚合结果 当然,除了给定表获取所有记录之外,还可以使用 find 和 first 获取单个记录。...软删除 除了数据库物理删除记录外,Eloquent 还可以对模型进行“软删除”。...); }); 现在,当调用模型的 delete 方法时,deleted_at 列将被设置为当前日期和时间,并且,当查询一个使用软删除的模型时,被软删除的模型将会自动查询结果中排除。...Laravel 自带的软删除功能就使用了全局作用域来数据库拉出所有没有被删除的模型。编写自定义的全局作用域可以提供一种方便的、简单的方式来确保给定模型的每个查询都有特定的条件约束。...$builder, Model $model) { return $builder- where('age', ' ', 200); } } Laravel 应用默认并没有为作用域预定义文件夹

    15.1K41

    3分钟短文:Laravel 软删除说到模型作用域的概念

    我们软删除的使用,再顺便说一说模型内的作用域的概念。 代码时间 常规的删除操作分两步进行,一步是把数据数据库查询出来,使用laravel模型的方法, 则返回的是一个模型对象。...数据库的表内记录直接移除了,这在重要的表, 比如user,order,payment这些关系用户权限,资金支付等等的重要数据资源上,物理删除是不被允许的。...在laravel, 这个软删除字段默认是 deleted_at。你也可以在模型手动指定。...$builder) { $builder->where('active', true); }); }} 那么所有的模型查询,都会默认加上声明的where...写在最后 本文laravel模型的写操作删除动作,讲到了软删除的概念。进而引申出来本地作用域和全局作用域的使用。软删除几乎贯穿了我们应用的始终,需要大家勤学苦练。

    1.3K30

    orm 系列 之 Eloquent演化历程2

    中一大亮点Artisan,Artisan是 Laravel 自带的命令行接口名称,此处不做具体的介绍了,有机会再细说的,当我们在命令行执行php artisan command的时候,会去调用migrateCommand...'); // 文件获取migrate files $files = $this->getMigrationFiles($path); // 获取已经执行的migration...的功能,包括了Model、Builder和Relation功能,忘记的可以去看前一篇orm 系列 之 Eloquent演化历程1的内容 Query:包含了最基本的Sql的操作和语法逻辑,类似于自定义了一个...migration哪些已经做了,哪些还没有做,这些记录方式我们通过DatabaseMigrationRepository来实现,最终是通过将执行记录以log的形式插入到数据库。...首先是morphMany的构造函数: public function __construct(Builder $query, Model $parent, $morphName) { $this

    2.4K30

    Laravel框架源码解析之模型Model原理与用法解析

    根据单一责任开发原则来讲,在laravel的开发过程每个表都应建立一个model对外服务和调用。...这个文件在你项目目录的 vendor/laravel/framework/src/Illuminate/Database/Query 下,你可以自行去查看。...DB facade 正常情况下你可能会这样写一个操作 DB::table('user')- get(); 这个操作首先经过laravel的门面指向文件,不过它并不在 app.php ,而是通过内核直接加载...Builder($query); } 最后我们到了 Illuminate\Database\Eloquent\Builder 文件下,这个类涵盖了ORM的基本操作,例如find , findOrFail...如果你在代码用到了get方法,抱歉,这里没有,它依旧会通过__call 方法将你的请求转发到 Illuminate\Database\Query\Builder $this- query- {$method

    1.8K30

    Laravel源码解析之Model

    根据单一责任开发原则来讲,在laravel的开发过程每个表都应建立一个model对外服务和调用。...这个文件在你项目目录的 vendor/laravel/framework/src/Illuminate/Database/Query 下,你可以自行去查看。...DB facade 正常情况下你可能会这样写一个操作 DB::table('user')->get(); 这个操作首先经过laravel的门面指向文件,不过它并不在 app.php ,而是通过内核直接加载...new Builder($query); } 最后我们到了 Illuminate\Database\Eloquent\Builder 文件下,这个类涵盖了ORM的基本操作,例如find , findOrFail...如果你在代码用到了get方法,抱歉,这里没有,它依旧会通过__call 方法将你的请求转发到 Illuminate\Database\Query\Builder $this->query->{$method

    1.1K30

    Laravel系列4.5】主从库配置和语法生成

    这也是因为我们在某些业务,需要在操作完数据后马上查询,主从之间的延迟可能会导致查询的库数据不正确(这在现实业务很常见)。...从这里我们可以看出,Laravel 是根据参数来判断是否使用库连接进行查询的,而我之前看过其它框架的源码,是 Yii 还是 TP 什么来着,有根据查询语句是否有 SELECT 字符来判断走库去查询的...在执行 update() 操作时,我们最后进入了 laravel/framework/src/Illuminate/Database/Query/Grammars/Grammar.php 这个对象。...public function compileSelect(Builder $query) { if ($query->unions && $query->aggregate) {...当然,更复杂的东西其实还是在构造器,毕竟在语法生成这里其实是已经到了最后的拼装阶段了。有兴趣的同学可以多深入研究一下 Builder 对象关于上述功能的方法实现。

    4.3K20
    领券