官方系列教材 - G计划

Joomla开发手册

当在查询语句中使用多个WHERE时,默认是使用AND来来链接的。

多个WHERE 默认为AND链接


下面的查询值会返回name字段和state字段同时匹配的结果。

$state = 1;
$query = $db
    ->getQuery(true)
    ->select('COUNT(*)')
    ->from($db->quoteName('#__zmaxuser_item'))
    ->where($db->quoteName('name') . " = " . $db->quote(‘张敏’)
    ->where($db->quoteName('state') . " = " . $db->quote($state));

 为了实现OR的效果,需要对查询语句作出修改,代码如下:

$query = $db
    ->getQuery(true)
    ->select('COUNT(*)')
    ->from($db->quoteName('#__my_table'))
    ->where($db->quoteName('name') . " = " . $db->quote($name_one), 'OR')
    ->where($db->quoteName('name') . " = " . $db->quote($name_two));

 在第一个where的后面,明确的说明使用OR来链接。

使用orwhere


使用orwhere可以改变条件为or 而不是 and.代码如下:

$query = $db
    ->getQuery(true)
    ->select('COUNT(*)')
    ->from($db->quoteName('#__my_table'))
    ->where($db->quoteName('name') . " = " . $db->quote($name_one)
    ->orWhere($db->quoteName('name') . " = " . $db->quote($name_two));

 

作者: 樱木花道

Joomla程序员,从J1.5到J4.x始终都在做Joomla相关开发定制工作,有超过10年行业经验,国内Joomla扩展开发商ZMAX团队的核心成员

作者网站:ZMAX程序人

评论 (0)

  • 最新在前
  • 最佳在前

第3章 处理URL请求参数

第5章 日志

第6章 错误和调试

第10章 缓存

第14章 路由系统