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

Codeigniter -选择id不在的地方(另一个查询结果)

Codeigniter是一个流行的PHP框架,它提供了简单、轻量级和高性能的开发环境,用于构建Web应用程序。Codeigniter采用了MVC(Model-View-Controller)的架构模式,使得开发人员可以更好地组织和管理代码。

在Codeigniter中,如果你想选择id不在另一个查询结果中的记录,可以使用SQL的NOT IN子句。NOT IN用于排除某个查询结果中的记录。

以下是一个示例的代码段,展示了如何在Codeigniter中使用NOT IN来选择id不在另一个查询结果中的记录:

代码语言:txt
复制
$excludedIds = array(1, 2, 3); // 另一个查询结果中的id

$this->db->where_not_in('id', $excludedIds);
$query = $this->db->get('your_table'); // 替换为实际的表名

// 处理查询结果
foreach ($query->result() as $row) {
    echo $row->id;
    echo $row->name;
    // 其他字段
}

在上面的代码中,我们定义了一个包含了另一个查询结果中的id的数组$excludedIds。然后,我们使用$this->db->where_not_in()方法来设置选择id不在这个数组中的条件。最后,通过$this->db->get()方法执行查询,并使用foreach循环处理查询结果。

Codeigniter提供了强大而易于使用的数据库库,允许你构建复杂的查询和操作数据库。在上述示例中,your_table应该替换为实际的表名。你可以根据需要调整查询条件和处理查询结果的逻辑。

对于Codeigniter的详细文档和更多信息,请访问腾讯云Codeigniter产品介绍页面:Codeigniter产品介绍

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

相关·内容

  • thinkphp3.2框架中where条件查询用法总结

    0<=id<=10 $where[‘id’] = array(‘between’,array(‘0′,’10’)) where id between 0 and 10 不在范围内 not between...在枚举值中 in in $where[‘id’] = array(‘in’,array(‘1′,’2′,’5’)) where id in (‘1′,’2′,’3’) 不在枚举值中 not in not...)'); 复查查询语句 有的时候,我们希望通过一次查询就能解决问题,这个时候查询条件往往比较复杂,但是却比多次查询库来高效。...获取要执行sql 语句 有的时候条件太复杂,比如 id in(xxxxx),这个xxx就是通过一系列操作获得结果,嫌麻烦就直接 都扔进去,写sql 又长,就直接获取sql语句扔进去 1.fetchsql...:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork

    1.9K30

    MyBatis源码 | 一条查询单条结果(`select * from t_user where id = ?`)SQL执行方法链追踪流程

    环境:mybatis版本3.4.5 mysql数据库驱动版本:5.1.6 MyBatis源码: 一条查询单条结果(select * from t_user where id = ?)...SQL执行方法链追踪流程 sqlSession.getMapper得到mapper就是动态代理对象,是MapperProxy类型: UserDao mapper = sqlSession.getMapper...,里面涉及到设计模式有:动态代理、装饰者模式、责任链模式(XXXHandler类里面)、命令模式; 底层是调用了JDBC执行代码,我们可以追踪到connection就是大家知道mysql驱动包里面的...com.mysql.jdbc.JDBC4Connection 类型,这也是数据库驱动使用装饰者模式实现Connection接口实例对象。...后面会加上图文描述,以更清晰、更细模块角度分享。

    50310

    tp5.1 框架查询表达式用法详解

    分享给大家供大家参考,具体如下: 查询表达式 查询表达式支持大部分SQL查询语法,也是ThinkPHP查询语言精髓,查询表达式使用格式: where('字段名','表达式','查询条件'); whereOr.../whereNotLike [NOT] BETWEEN (不在)区间查询 whereBetween/whereNotBetween [NOT] IN (不在)IN 查询 whereIn/whereNotIn...('id','1,8')- select(); [NOT] IN: 同sql[not] in 查询条件支持字符串或者数组,例如: Db::name('user')- where('id','in','...FROM `think_user` WHERE `id` IN (1,5,8) 最快捷查询方法是: Db::name('user')- whereIn('id','1,5,8')- select()...、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    1.3K21

    -控制器

    考虑下面的 URI: example.com/index.php/blog/ 上例中,CodeIgniter 将会尝试查询一个名为 Blog.php 控制器并加载它。...php class Products extends \CodeIgniter\Controller { public function shoes($sandals, $id)...每当控制器被加载时, 这些辅助文件将自动加载到内存中,这样就可以在控制器任何地方使用它们方法。...} 验证 $_POST 数据 控制器还提供了一个简单方便方法来验证 $_POST 数据,将一组规则作为第一个参数进行验证,如果验证不通过,可以选择显示一组自定义错误消息。...你可以在任何地方处理,你会发现控制器中一些情况比模型简单,反之亦然。 就这样了! OK,总的来说,这就是关于控制器所有内容了。

    3.6K20

    tp5.1框架数据库子查询操作实例分析

    select(); 生成subQuery结果为: SELECT `id`,`name` FROM `think_user` WHERE `id` 10 使用buildSql构造子查询 $subQuery...= Db::table('think_user') - field('id,name') - where('id', ' ', 10) - buildSql(); 生成subQuery结果为:...( SELECT `id`,`name` FROM `think_user` WHERE `id` 10 ) 调用buildSql方法后不会进行实际查询操作,而只是生成该次查询SQL语句(为了避免混淆...WHERE a.name LIKE 'thinkphp' ORDER BY `id` desc 使用闭包构造子查询 IN/NOT IN和EXISTS/NOT EXISTS之类查询可以直接使用闭包作为子查询...:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork

    88730

    ThinkPHP3.2.3框架实现执行原生SQL语句方法示例

    分享给大家供大家参考,具体如下: 【查询语句】query方法 示例:查询blog_article表中文章标题title字段 //构造sql语句 $sql = "select `title` from...`title` from __ARTICLE__"; //实例化model对象,执行query方法,得到查询数据结果集 $res = M()- query($sql); 【添加、修改、删除语句】execute...方法 示例:修改blog_article表中id为1文章标题title字段为“PHP是世界上最好语言” //构造sql语句 $sql = "update blog_article set title...是世界上最好语言' where id=1"; //$sql = "update __ARTICLE__ set title='PHP是世界上最好语言' where id=1"; //实例化model...模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结

    1.2K30

    CI一些优秀实践

    数据库 和 ORM CodeIgniter 有一个自带库 Active Record 能够帮助你在不使用 SQL 语句情况下写查询语句。...当你需要更强大工具时,你可以考虑使用 Object Relational Mapper ,就是鼎鼎大名 ORM 了,遗憾是,CodeIgniter 没有自带 ORM 库,不过也有一些其他很好选择...最流行或许是 DataMapper OverZealous Edition (DMZ),还可以使用 Doctrine (这里有一个教程),另一个选择 RapidDataMapper 是作者自己作品。...不要总是重复造轮子,把能重用代码放在它应该在地方,比如libraries, helpers 或者是 models,而不是controllers,一个经验准则:当你复制代码时候,也许你已经第二次把它放在了错误地方...紧接着codeigniter载入了第一个类库,Benchmark,这个类库最简单一个应用就是计算网页从开始到编译结束所花掉时间,所以您在编译开始地方打上一个标记,渲染结束后再打上一个标记,就可以算出其中花费时间了

    3.3K50

    PHP面试题,面试必看!

    $_GET,现在可以通过‘param’获取,具体使用可以通过请求部分查询。...env环境文件,方便了系统配置和不同平台开发 ==Lavarel缺点==: 1.基于组件式框架,所以比较臃肿 ==CodeIgniter简单介绍==:CodeIgniter 是一套小巧但功能强大...,选择出”user”表里age > 22所有记录打印结果,并统计出查询结果总数 $con = mysql_connect('localhost','root','123456') or die('...数据库连接失败');//连接 mysql_select_db('db_data',$con) or die('选择数据库失败');//选择数据库 $sql = 'SELECT * FROM `user`...— 产生一个可存储表示,返回值为字符串,此字符串包含了表示 value 字节流,不丢失其类型和结构,可以存储于任何地方

    2K20

    tp5.1 框架join方法用法实例分析

    分享给大家供大家参考,具体如下: JOIN方法用于根据两个或多个表中列之间关系,从这些表中查询数据。join通常有下面几种类型,不同类型join操作会影响返回数据结果。...完整)表名以及别名 支持写法: 写法1:[ ‘完整表名或者子查询’= ‘别名’ ] 写法2:’不带数据表前缀表名’(自动作为别名) 写法2:’不带数据表前缀表名 别名’ condition 关联条件...a.id=w.artist_id') - join(['think_card'= 'c'],'a.card_id=c.id') - select(); 默认采用INNER JOIN 方式,如果需要用其他...; 表名也可以是一个子查询 $subsql = Db::table('think_work') - where('status',1) - field('artist_id,count(id) count...》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    1.5K20

    thinkphp 框架数据库切换实现方法分析

    database.php是框架默认数据库配置,里面写数据库1信息,新建了个database2.php是放置数据库2信息。..., 代码中引用: 选择数据库1时候,我是用模型查询直接写SQL语句: //模型查询 $user = new User(); $result = $user- where('username', $data...')- find(); //普通结构查询 Db::table('think_user')- where('id',1)- find(); 查询数据库2信息时,调用普通查询语句: $list = Db:...:connect('db_con2') - table('nrf_amf_reg_info') - alias('r') - join('nrf_amf_server s','r.Id = s.nrf_amf_reg_Id...:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork

    1K30

    CI框架网页缓存简单用法分析

    分享给大家供大家参考,具体如下: CodeIgniter 可以让你通过缓存页面来达到更好性能。...尽管 CodeIgniter 已经相当高效了,但是网页中动态内容、主机内存 CPU 和数据库读取速度等因素直接影响了网页加载速度。...依靠网页缓存, 你网页可以达到近乎静态网页加载速度,因为程序输出结果 已经保存下来了。 缓存是如何工作? 可以针对到每个独立页面进行缓存,并且你可以设置每个页面缓存更新时间。...,它出现顺序对缓存没有影响, 所以你可以把它放到任何你认为合理地方。...一旦该代码被放在方法内, 你页面就开始被缓存了。 由于 CodeIgniter 存储缓存方式,只有通过 view 输出页面才能缓存。

    1.4K41

    PHP框架探索:流行框架优缺点详解

    本篇博客将深入探讨几种流行PHP框架,分析它们各自优势和不足,以便开发者在选择框架时能够更明智地作出决策。...强大ORM(Eloquent):Eloquent提供了便捷数据库查询和模型关联,简化了与数据库交互。...优秀文档和社区支持:CodeIgniter拥有清晰明了文档,以及积极社区支持。 缺点: 功能相对较少:相对于一些大型框架,CodeIgniter功能相对较少,不适合复杂大型应用。...缺乏官方ORM支持:CodeIgniter在ORM方面相对弱,需要借助第三方库来实现。 结论 在选择PHP框架时,需要根据项目规模、复杂性以及团队经验等因素来进行权衡。...Laravel适用于中大型项目,Symfony提供高度灵活性,而CodeIgniter则适合小型项目和初学者。最终选择取决于开发者对项目的具体需求和对框架偏好。

    33810

    tp5.1 框架数据库-数据集操作实例分析

    分享给大家供大家参考,具体如下: 数据库查询结果也就是数据集,默认配置下,数据集类型是一个二维数组,我们可以配置成数据集类,就可以支持对数据集更多对象化操作,需要使用数据集类功能,可以配置数据库...在模型中进行数据集查询,全部返回数据集对象,但使用是think\model\Collection类,但用法是一致。...获取数据集记录数 $count = count($users); // 遍历数据集 foreach($users as $user){ echo $user['name']; echo $user['id...']; } V5.1.23+版本开始,你可以在查询时候指定是否需要返回数据集(无需配置resultset_type参数) // 获取数据集 $users = Db::name('user')- fetchCollection...、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    1.3K10

    -CodeIgniter URL

    CodeIgniter URL 在默认情况下,CodeIgniter URL 被设计成对搜索引擎和用户友好样式。...不同于使用传统在动态系统中使用代词标准 “查询字符串” 方式,CodeIgniter 使用基于段方法: example.com/news/article/my_article URI 分段 如果遵循模型...-视图-控制器模式,那么 URI 中每一段通常表示下面的含义: example.com/class/method/ID 第一段表示要调用控制器 类 ; 第二段表示要调用类中 函数 或 方法 ;...第三段以及后面的段代表传给控制器参数,如 ID 或其他任何变量; URI 类 和 URL 辅助函数 包含了一些函数可以让你更容易处理 URI 数据。...此外,可以通过 URI 路由 方式进行重定向你 URL 从而使得程序更加灵活。

    2.3K20
    领券