微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从数据库提取数据时避免特定值的最佳方法?

如何解决从数据库提取数据时避免特定值的最佳方法?

问题

在使用medoo合并数组时,忽略特定值。

详细信息

我有两个由两个相似的表创建的数组。他们有一个用户”行和一个“ id”行。 下面的示例:

id        name   
-------   ---------
  1         John Doe     
  2         John SNow    
  3         Jane     
  4         Jane       

忽略名称行中所有带有“ John ...”的条目的最佳方法是什么? 我的array_merge当前是这样的:

  public function getUsersByName($name)
    {
        $res = array_merge(
            $this->_db->select('users1',['id','name'],$this->_db->select('users2','name']
        );
        return $res;
    }

这将返回一个不错的数组,其中包含表中的所有值。忽略这些值并跳到下一个合法值的最佳实践是什么?

解决方法

要在medoo中使用WHERE .. NOT LIKE ..运行查询,可以将第三个参数传递给select(),该参数包含where子句的数组。关键是带有运算符的列,并且值是-好吧,值。

例如,要从没有名称以users1开头的John中进行选择,您将需要

$this->_db->select('users1',['id','name'],['name[!~]' => 'John']);

[!~]表示NOT LIKE

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。