mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 21:42:35 +01:00
40c42468bc
A table expression with a natural join or a USING clause is transformed into an equivalent expression with equi-join ON conditions. If a reference to a virtual column happened to occur only in these generated equi-join conditions then it was not erroneously marked in the TABLE::vcol_set bitmap. This could lead to wrong results for queries containing natural join expressions or USING clauses.
70 lines
2.8 KiB
Text
70 lines
2.8 KiB
Text
################################################################################
|
|
# t/vcol_select.test #
|
|
# #
|
|
# Purpose: #
|
|
# Testing different SELECTs. #
|
|
# #
|
|
# MyISAM branch #
|
|
# #
|
|
#------------------------------------------------------------------------------#
|
|
# Original Author: Andrey Zhakov #
|
|
# Original Date: 2008-09-18 #
|
|
# Change Author: #
|
|
# Change Date: #
|
|
# Change: #
|
|
################################################################################
|
|
|
|
#
|
|
# NOTE: PLEASE DO NOT ADD NOT MYISAM SPECIFIC TESTCASES HERE !
|
|
# TESTCASES WHICH MUST BE APPLIED TO ALL STORAGE ENGINES MUST BE ADDED IN
|
|
# THE SOURCED FILES ONLY.
|
|
#
|
|
|
|
#------------------------------------------------------------------------------#
|
|
# Cleanup
|
|
--source suite/vcol/inc/vcol_cleanup.inc
|
|
|
|
#------------------------------------------------------------------------------#
|
|
# General not engine specific settings and requirements
|
|
--source suite/vcol/inc/vcol_init_vars.pre
|
|
|
|
#------------------------------------------------------------------------------#
|
|
# Engine specific settings and requirements
|
|
|
|
##### Storage engine to be tested
|
|
# Set the session storage engine
|
|
eval SET @@session.storage_engine = 'MyISAM';
|
|
|
|
##### Workarounds for known open engine specific bugs
|
|
# none
|
|
|
|
#------------------------------------------------------------------------------#
|
|
# Execute the tests to be applied to all storage engines
|
|
--source suite/vcol/inc/vcol_select.inc
|
|
|
|
#------------------------------------------------------------------------------#
|
|
# Execute storage engine specific tests
|
|
|
|
#------------------------------------------------------------------------------#
|
|
# Cleanup
|
|
--source suite/vcol/inc/vcol_cleanup.inc
|
|
|
|
--echo #
|
|
--echo # Bug #806057: join with USING over a virtual column
|
|
--echo #
|
|
|
|
CREATE TABLE t1 (b int);
|
|
INSERT INTO t1 VALUES (NULL),( 78), (185), (0), (154);
|
|
|
|
CREATE TABLE t2 (a int, b int AS (a) VIRTUAL);
|
|
INSERT INTO t2 VALUES (187,187), (9,9), (187,187);
|
|
|
|
EXPLAIN EXTENDED
|
|
SELECT * FROM t1 JOIN t2 USING (b);
|
|
SELECT * FROM t1 JOIN t2 USING (b);
|
|
|
|
EXPLAIN EXTENDED
|
|
SELECT * FROM t1 NATURAL JOIN t2;
|
|
SELECT * FROM t1 NATURAL JOIN t2;
|
|
|
|
DROP TABLE t1,t2;
|