My Project
Public Types | Public Member Functions
Item_func_trig_cond Class Reference
Inheritance diagram for Item_func_trig_cond:
Item_bool_func Item_int_func Item_func Item_result_field Item

List of all members.

Public Types

enum  enum_trig_type { IS_NOT_NULL_COMPL, FOUND_MATCH, OUTER_FIELD_IS_NOT_NULL }

Public Member Functions

 Item_func_trig_cond (Item *a, bool *f, struct st_join_table *tab, enum_trig_type trig_type_arg)
longlong val_int ()
enum Functype functype () const
const char * func_name () const
 '<if>', to distinguish from the if() SQL function
bool const_item () const
bool * get_trig_var ()
table_map used_tables () const
void print (String *str, enum_query_type query_type)

Member Enumeration Documentation

Enumerator:
IS_NOT_NULL_COMPL 

In t1 LEFT JOIN t2, ON can be tested on t2's row only if that row is not NULL-complemented

FOUND_MATCH 

In t1 LEFT JOIN t2, the WHERE pushed to t2 can be tested only after at least one t2's row has been found

OUTER_FIELD_IS_NOT_NULL 

In IN->EXISTS subquery transformation, new predicates are added: WHERE inner_field=outer_field OR inner_field IS NULL, as well as HAVING inner_field IS NOT NULL, are disabled if outer_field is a NULL value


Constructor & Destructor Documentation

Item_func_trig_cond::Item_func_trig_cond ( Item a,
bool *  f,
struct st_join_table tab,
enum_trig_type  trig_type_arg 
) [inline]
Parameters:
athe item for <condition>
fpointer to trigger variable
taboptional table which is source of 'f', NULL if not applicable
trig_type_argtype of 'f'

Member Function Documentation

void Item_func_trig_cond::print ( String str,
enum_query_type  query_type 
) [virtual]

This method is used for to:

  • to generate a view definition query (SELECT-statement);
  • to generate a SQL-query for EXPLAIN EXTENDED;
  • to generate a SQL-query to be shown in INFORMATION_SCHEMA;
  • debug.

For more information about view definition query, INFORMATION_SCHEMA query and why they should be generated from the Item-tree,

See also:
mysql_register_view().

Reimplemented from Item_func.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines