mirror of
https://github.com/MariaDB/server.git
synced 2025-08-05 13:16:09 +03:00
Manual merge
This commit is contained in:
@@ -910,4 +910,10 @@ a b a b
|
|||||||
1 1 1 2
|
1 1 1 2
|
||||||
2 1 2 2
|
2 1 2 2
|
||||||
3 1 NULL NULL
|
3 1 NULL NULL
|
||||||
|
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE not(0+(t1.a=30 and t2.b=1));
|
||||||
|
a b a b
|
||||||
|
1 1 1 2
|
||||||
|
2 1 2 2
|
||||||
|
3 1 NULL NULL
|
||||||
|
4 2 NULL NULL
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
|
@@ -645,6 +645,7 @@ SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a;
|
|||||||
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE t1.b=1;
|
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE t1.b=1;
|
||||||
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a
|
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a
|
||||||
WHERE t1.b=1 XOR (NOT ISNULL(t2.a) AND t2.b=1);
|
WHERE t1.b=1 XOR (NOT ISNULL(t2.a) AND t2.b=1);
|
||||||
|
SELECT * FROM t1 LEFT JOIN t2 ON t1.a=t2.a WHERE not(0+(t1.a=30 and t2.b=1));
|
||||||
|
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
|
|
||||||
|
@@ -371,8 +371,9 @@ void berkeley_cleanup_log_files(void)
|
|||||||
** Berkeley DB tables
|
** Berkeley DB tables
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
|
|
||||||
|
static const char *ha_bdb_bas_exts[]= { ha_berkeley_ext, NullS };
|
||||||
const char **ha_berkeley::bas_ext() const
|
const char **ha_berkeley::bas_ext() const
|
||||||
{ static const char *ext[]= { ha_berkeley_ext, NullS }; return ext; }
|
{ return ha_bdb_bas_exts; }
|
||||||
|
|
||||||
|
|
||||||
ulong ha_berkeley::index_flags(uint idx, uint part, bool all_parts) const
|
ulong ha_berkeley::index_flags(uint idx, uint part, bool all_parts) const
|
||||||
|
@@ -3015,12 +3015,8 @@ int ha_ndbcluster::extra_opt(enum ha_extra_function operation, ulong cache_size)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static const char *ha_ndb_bas_ext[]= { ha_ndb_ext, NullS };
|
static const char *ha_ndb_bas_exts[]= { ha_ndb_ext, NullS };
|
||||||
const char**
|
{ return ha_ndb_bas_exts; }
|
||||||
ha_ndbcluster::bas_ext() const
|
|
||||||
{
|
|
||||||
return ha_ndb_bas_ext;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -1187,6 +1187,8 @@ public:
|
|||||||
enum Functype functype() const { return COND_AND_FUNC; }
|
enum Functype functype() const { return COND_AND_FUNC; }
|
||||||
longlong val_int();
|
longlong val_int();
|
||||||
const char *func_name() const { return "and"; }
|
const char *func_name() const { return "and"; }
|
||||||
|
table_map not_null_tables() const
|
||||||
|
{ return abort_on_null ? not_null_tables_cache: and_tables_cache; }
|
||||||
Item* copy_andor_structure(THD *thd)
|
Item* copy_andor_structure(THD *thd)
|
||||||
{
|
{
|
||||||
Item_cond_and *item;
|
Item_cond_and *item;
|
||||||
@@ -1234,7 +1236,7 @@ public:
|
|||||||
enum Type type() const { return FUNC_ITEM; }
|
enum Type type() const { return FUNC_ITEM; }
|
||||||
longlong val_int();
|
longlong val_int();
|
||||||
const char *func_name() const { return "xor"; }
|
const char *func_name() const { return "xor"; }
|
||||||
table_map not_null_tables() const { return and_tables_cache; }
|
void top_level_item() {}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user