mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-26695: Number of an invalid row is not calculated for table value
constructor Analysis: counter does not increment while sending rows for table value constructor and so row_number assumes the default value (0 in this case). Fix: Increment the counter to avoid counter using default value.
This commit is contained in:
@ -1687,3 +1687,27 @@ GET DIAGNOSTICS CONDITION 3 @n = ROW_NUMBER;
|
||||
SELECT @n;
|
||||
|
||||
DROP TABLE t;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-26695: Number of an invalid row is not calculated for table value constructor
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a CHAR(1)) VALUES ('a'),('b'),('foo');
|
||||
GET DIAGNOSTICS CONDITION 1 @n= ROW_NUMBER;
|
||||
SELECT @n;
|
||||
CREATE TABLE t2 (a CHAR(1)) VALUES ('a'),('b') UNION VALUES ('foo');
|
||||
GET DIAGNOSTICS CONDITION 1 @n= ROW_NUMBER;
|
||||
SELECT @n;
|
||||
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
--echo # Checking that CREATE ... SELECT works
|
||||
|
||||
CREATE TABLE t1 (val1 CHAR(5));
|
||||
INSERT INTO t1 VALUES ('A'),('B'),('C'),('DEF');
|
||||
CREATE TABLE t2 (val2 CHAR(1)) SELECT val1 as val2 FROM t1;
|
||||
GET DIAGNOSTICS CONDITION 1 @n= ROW_NUMBER;
|
||||
SELECT @n;
|
||||
SELECT * FROM t2;
|
||||
|
||||
DROP TABLE t1,t2;
|
||||
|
Reference in New Issue
Block a user