当前位置: 首页 > 面试题库 >

CodeIgniter:如何执行选择(不同的字段名)MySQL查询

贺元明
2023-03-14
问题内容

我正在尝试检索字段中所有唯一值的计数。

示例SQL:

SELECT count(distinct accessid) FROM (`accesslog`) WHERE record = '123'

如何在CodeIgniter内部进行这种查询?

我知道我可以使用$this->db->query(),并编写自己的SQL查询,但是我还有其他要求$this->db->where()。如果我使用,->query()我必须自己编写整个查询。


问题答案:
$record = '123';

$this->db->distinct();

$this->db->select('accessid');

$this->db->where('record', $record);

$query = $this->db->get('accesslog');

然后

$query->num_rows();

应该走很长的路要走。



 类似资料:
  • 我正在编写一个方法,将一条记录插入或更新到mysql表中,只有当字段“sample_time”大于表中当前记录的这个值时,才会进行更新。下面是我现在想做的事情。 但是我不知道如何通过记录的唯一键来选择,而不考虑确切的字段名称或字段编号。所以我的问题是: 我如何实现“按记录的唯一键选择,而不考虑确切的字段名称或字段编号” 或者,我如何在jooq中使用条件为重复更新的条件 提前感谢您的帮助!

  • 问题内容: 我正在尝试选择mysql表中的重复行,它对我来说很好,但问题是它不是让我选择该查询中的所有字段,而是让我选择用作不同的字段名,让我写查询更好的了解 第一个工作正常 现在,当我尝试选择所有字段时,我最终会出现错误 我正在尝试选择最新的重复项,比如说ticket_id 127是行ID 7、8、9的3倍,因此我想选择一次,最新条目在这种情况下为9,这适用于所有其余项ticket_id的 任何

  • 问题内容: 我正在使用CodeIgniter的Active Record类来查询MySQL数据库。我需要选择表中没有将字段设置为NULL的行: 那只会返回以下查询: 该字段是一个字段。 有没有更好的方法来解决这个问题?我知道我可以自己编写查询,但是我不想在整个代码中都使用Active Record。 问题答案:

  • 问题内容: 因此,我有两个表格学生(PK sID)和导师(PK pID)。这个查询 提供这个结果 我正在尝试以此顺序获取不同的导师ID的列表,因此我正在寻找要生成的SQL 如果仅在SELECT子句中插入DISTINCT,我将得到意外的结果10、9、3(错误的顺序)。任何帮助,不胜感激。 问题答案:

  • 问题内容: 如何仅返回MySQL中字段的第一个不同匹配项? 我的表: 我的查询(用于): 这将返回: 而不是:( 我追求的结果) 如何只获得每个唯一名称的第一个匹配项? 我想返回第一个,跳过第二个(以及任何后续的匹配项),但仍然得到(以及任何其他不同的匹配项,例如或)。 问题答案: 不能以这种方式工作,返回的所有列中的值都必须是不同的。 您可以始终在该函数上使用聚合函数,该函数将为每个函数返回一个

  • 我有一个带有varchar类型电子邮件字段的表。 除表中的一封电子邮件外,其他所有电子邮件都能正常工作。