1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

Merge rurik.mysql.com:/home/igor/mysql-4.1

into rurik.mysql.com:/home/igor/dev/mysql-4.1-0


include/my_sys.h:
  Auto merged
mysql-test/r/func_group.result:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.h:
  Auto merged
This commit is contained in:
unknown
2003-08-02 03:27:13 -07:00
146 changed files with 1767 additions and 3191 deletions

View File

@@ -206,8 +206,12 @@ public:
ha_rows select_limit, offset_limit; /* LIMIT clause parameters */
// Arrays of pointers to top elements of all_fields list
Item **ref_pointer_array;
uint select_items; /* number of items in select_list */
/*
number of items in select_list and HAVING clause used to get number
bigger then can be number of entries that will be added to all item
list during split_sum_func
*/
uint select_n_having_items;
uint cond_count; /* number of arguments of and/or/xor in where/having */
enum_parsing_place parsing_place; /* where we are parsing expression */
bool with_sum_func; /* sum function indicator */
@@ -362,14 +366,27 @@ public:
bool braces; /* SELECT ... UNION (SELECT ... ) <- this braces */
/* TRUE when having fix field called in processing of this SELECT */
bool having_fix_field;
/*
TRUE for primary st_select_lex structure of simple INSERT/REPLACE
SELECT for SELECT command st_select_lex. Used to privent scaning
item_list of non-SELECT st_select_lex (no sense find to finding
reference in it (all should be in tables, it is dangerouse due
to order of fix_fields calling for non-SELECTs commands (item list
can be not fix_fieldsd)). This value will be assigned for
primary select (sql_yac.yy) and for any subquery and
UNION SELECT (sql_parse.cc mysql_new_select())
INSERT for primary st_select_lex structure of simple INSERT/REPLACE
(used for name resolution, see Item_fiels & Item_ref fix_fields,
FALSE for INSERT/REPLACE ... SELECT, because it's
st_select_lex->table_list will be preprocessed (first table removed)
before passing to handle_select)
NOMATTER for other
*/
bool insert_select;
enum {NOMATTER_MODE, SELECT_MODE, INSERT_MODE} resolve_mode;
void init_query();
void init_select();