You are here

function views_plugin_query::set_where_group in Views (for Drupal 7) 6.3

Same name and namespace in other branches
  1. 7.3 plugins/views_plugin_query.inc \views_plugin_query::set_where_group()

Create a new grouping for the WHERE or HAVING clause.

Parameters

$type: Either 'AND' or 'OR'. All items within this group will be added to the WHERE clause with this logical operator.

$group: An ID to use for this group. If unspecified, an ID will be generated.

$where: 'where' or 'having'.

Return value

$group The group ID generated.

2 calls to views_plugin_query::set_where_group()
views_plugin_query_default::add_having in plugins/views_plugin_query_default.inc
Add a simple HAVING clause to the query. The caller is responsible for ensuring that all fields are fully qualified (TABLE.FIELD) and that the table and an appropriate GROUP BY already exist in the query.
views_plugin_query_default::add_where in plugins/views_plugin_query_default.inc
Add a simple WHERE clause to the query. The caller is responsible for ensuring that all fields are fully qualified (TABLE.FIELD) and that the table already exists in the query.

File

plugins/views_plugin_query.inc, line 134
Defines the base query class, which is the underlying layer in a View.

Class

views_plugin_query
Object used to create a SELECT query.

Code

function set_where_group($type = 'AND', $group = NULL, $where = 'where') {

  // Set an alias.
  $groups =& $this->{$where};
  if (!isset($group)) {
    $group = empty($groups) ? 1 : max(array_keys($groups)) + 1;
  }

  // Create an empty group
  if (empty($groups[$group])) {
    $groups[$group] = array(
      'clauses' => array(),
      'args' => array(),
    );
  }
  $groups[$group]['type'] = strtoupper($type);
  return $group;
}