Bug #119400 rows become less after changing join clause
Submitted: 15 Nov 7:20
Reporter: cl hl Email Updates:
Status: Open Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:9.4.0 OS:Any
Assigned to: CPU Architecture:Any

[15 Nov 7:20] cl hl
Description:
the first query returns 36 rows.after changing INNER JOIN to LEFT JOIN ,the result become only 4 rows.The query with inner join returning result is fault.

mysql> WITH cte_350 AS (SELECT rtp15.c4 AS col_1, COS(rtp15.c9) AS col_2, rtp15.c3 AS col_3, COS(rtp15.c6) AS col_4 FROM t3 AS rtp15 USE INDEX (idx_t3_c10)) SELECT yth38.col_4 AS col_1, vfv58.c1 AS col_2 FROM t1 AS vfv58 USE INDEX (idx_t1_pk_c5) INNER JOIN cte_350 AS yth38 ON EXISTS(SELECT rel20.col_1 AS col_1 FROM cte_350 AS rel20 WHERE (vfv58.c4 = rel20.col_2) ORDER BY rel20.col_1 LIMIT 1) ORDER BY vfv58.c5 DESC;
+---------------------+-------+
| col_1               | col_2 |
+---------------------+-------+
| -0.9111302618846769 |   954 |
|  0.9217512697247493 |   954 |
|  0.1367372182078336 |   954 |
| -0.9111302618846769 |   954 |
|  0.9217512697247493 |   954 |
|  0.1367372182078336 |   954 |
| -0.9111302618846769 |   954 |
|  0.9217512697247493 |   954 |
|  0.1367372182078336 |   954 |
|  0.1367372182078336 |  3584 |
| -0.9111302618846769 |  3584 |
|  0.9217512697247493 |  3584 |
|  0.1367372182078336 |  3584 |
| -0.9111302618846769 |  3584 |
|  0.9217512697247493 |  3584 |
|  0.1367372182078336 |  3584 |
| -0.9111302618846769 |  3584 |
|  0.9217512697247493 |  3584 |
|  0.9217512697247493 |  6432 |
|  0.1367372182078336 |  6432 |
| -0.9111302618846769 |  6432 |
|  0.9217512697247493 |  6432 |
|  0.1367372182078336 |  6432 |
| -0.9111302618846769 |  6432 |
|  0.9217512697247493 |  6432 |
|  0.1367372182078336 |  6432 |
| -0.9111302618846769 |  6432 |
|  0.1367372182078336 |  1986 |
|  0.9217512697247493 |  1986 |
| -0.9111302618846769 |  1986 |
|  0.1367372182078336 |  1986 |
|  0.9217512697247493 |  1986 |
| -0.9111302618846769 |  1986 |
|  0.1367372182078336 |  1986 |
|  0.9217512697247493 |  1986 |
| -0.9111302618846769 |  1986 |
+---------------------+-------+
36 rows in set (0.00 sec)

mysql> WITH cte_350 AS (SELECT rtp15.c4 AS col_1, COS(rtp15.c9) AS col_2, rtp15.c3 AS col_3, COS(rtp15.c6) AS col_4 FROM t3 AS rtp15 USE INDEX (idx_t3_c10)) SELECT yth38.col_4 AS col_1, vfv58.c1 AS col_2 FROM t1 AS vfv58 USE INDEX (idx_t1_pk_c5) LEFT JOIN cte_350 AS yth38 ON EXISTS(SELECT rel20.col_1 AS col_1 FROM cte_350 AS rel20 WHERE (vfv58.c4 = rel20.col_2) ORDER BY rel20.col_1 LIMIT 1) ORDER BY vfv58.c5 DESC;
+-------+-------+
| col_1 | col_2 |
+-------+-------+
|  NULL |   954 |
|  NULL |  3584 |
|  NULL |  6432 |
|  NULL |  1986 |
+-------+-------+
4 rows in set (0.00 sec)

How to repeat:
DROP DATABASE IF EXISTS test;
CREATE DATABASE IF NOT EXISTS test;
USE test;
CREATE TABLE t1 (
    c1 INT NOT NULL AUTO_INCREMENT,
    c2 VARCHAR(255) NOT NULL,
    c3 VARCHAR(255) NULL,
    c4 INT NULL,
    c5 DATE NOT NULL,
    c6 VARCHAR(10) NOT NULL,
    PRIMARY KEY (c1)
);

CREATE TABLE t3 (
    c1 INT NOT NULL AUTO_INCREMENT,
    c2 INT NOT NULL,
    c3 INT NOT NULL,
    c4 YEAR NOT NULL,
    c5 TIME NULL,
    c6 TINYINT NULL,
    c7 SMALLINT NULL,
    c8 MEDIUMINT NULL,
    c9 BIGINT NULL,
    c10 LONGTEXT NULL,
    c11 VARCHAR(255) NULL,
    c12 TINYTEXT NULL,
    c13 TINYBLOB NULL,
    c14 SET('x','y','z') NULL,
    c15 TINYINT(1) NULL,
    PRIMARY KEY (c1)
);

INSERT INTO t1 (c1, c2, c3, c4, c5, c6) VALUES (3584, 'sample_AQJP3FCb7PX46hF2d3VoKsPIHtIgzieVgOK1Ue7iSbNProjjh', 'sample_v', 36, '2025-09-07', 'sample_J');
INSERT INTO t1 (c1, c2, c3, c4, c5, c6) VALUES (954, 'sample_0kfPnPKeUjkycwqHxj5OtQ8', 'sample_sQ', 90, '2025-10-10', 'sample_C');
INSERT INTO t1 (c1, c2, c3, c4, c5, c6) VALUES (1986, 'sample_tJaorTY4zIEBbb8IM4auYieeVSd80foFpJh3MIv0Rz8fEgfYthMyHLdUMnlIN6NnP0VoAFBpSEUcHovYpCFbGrC98Y52vXpgXsmsEBDYj6ecgN2JkDh393f4hhIjFLpqffJrE5Z09WtyvK6PT0IcDNjF6S16yhunjPWFxaAbK4Z6', 'sample_bIa5736UIVD92z8u5rQ0PaRpPlOEwroZ4Xoqc4jDp4SiRROqU4u2EvOZZupAHmFPuFcWjOC6V16yTz58i3824l1EdwAgMPAPy9RM2sHerAB3L3eAWFGFd', 68, '2025-04-20', 'sample_KWK');
INSERT INTO t1 (c1, c2, c3, c4, c5, c6) VALUES (6432, 'sample_apUxsuYxJ7yJ6etwr3Sd7Cg7l1JHXVRSgSUF689u4w2greqF3zbivycDbv6qA4Wusopmd80qoDFLGg1ercUJBRyEl0j0aw1JXgj35Pg4JK2lNYBG2UPKBvS3jhsYpkYbhUNtq5zfTal0MXOuOk4CydQWObucwCG1tGcBtxVHzwZf18W2M7Fl2c8AzYVIIn', 'sample_xoju7XvqD9RJhJ2NAoI2KxR5QZdZKDIjrOdN8MahX1k3dJu9UxKIjMzLtBjiMnoN5JxDvSR7bHNsAECcv5onlaOPg4TBQg4yQw6ThZm8lvYZcq9lBqZap4SoxgEZLdQaIflJvl7EcmCUqqRgQEes', 48, '2025-04-28', 'sample_N');

INSERT INTO t3 (c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14, c15) VALUES (8417, 9828, 4869, 2023, '2023-01-01 21:39:34', 14, 68, 41, 89, 'sample_etX2AhIU3JkLkyrEOwJTBqpBStqOrUPbskI8gL9NI0mwroTZBFHdHYljUuEHNlUbh5hyij8jKGC30KpbQ1LxgLF3m1cLuhezhgFbet0FnWTwJErW2Qd64AWovLqIOmfMKcJrXPMb405Gro9bXX0ewJlrXrzl383yHWXzgpu1Tb9SGfjW21HzuYBp50VLzsuEtkTKnFouWhIF6m4rT46enkICMZ8vOF9qUanlkKZ8aPFJSjPJX5O8pnDC1BiPX77tUJojj286KVV5Av6I9B9Itw8A0V2gZumzouD06KPaMkQlHsphSpBT7VpjPpneb3ebwLvj73Y15sCv5iwcbaDKFGTuZRdqtmCwx2l37zcGJgU6Ch8fbCNAgmFdYNJ0sveP7uiAvefZUWmlnFmQo6ASVSR5utAX2ha7bflNpNvwT6pbanbj49lcD00bY3DYwRWuMh2d8dVb1p9allRD9Tie2mJJO2wW5qmI3uHz9MzFBCRrkAwOhczPgT6gPtnleQXwtsdSU0zzeUjTYdu23ISbFdfCk9bgfRtIZkXa4faYbiRfy8jPkwjLNK9swCMcwxAtNe1LjK0DqRcGuVbTX5E2vpfDlfk60euiq1RO4TLEUuMaBpptJ7hAGQbTQrfD7rQr5s2QzKUNgM7jY3Pz0NtNRCDtousLLEzfvEmQkM4H95WGf4v24A564PdHfyY3xYflHU3pID5XyBUNi1XC2vga2Kq8ADaM5VKsE3o4BWIKpJcuESY0bOUcp1SOhSaqFiYjf3mmm9eUqo4elRwMqf37uOeNQ1TdvdvJlKRNHTi4umf6TYZr57zdtS4RuQ7HHW2NE5wQBBhmLcpoQyTquda7JCVSmmKo8G0h1C4VXe46bDTQvjJmrCw7JKMLncGbm7TEMsWMdiNxFPoXUDpxkXUSkjRAe0Uc9tPmeTUwq5uauperTQaR', 'sample_weZoLCxaYRuEbIZSAcw', 'sample_8eD325FzN79CIA1lx3hcxnIVFhKIlbppGhso8TzRvfqzVgovF4texBWt2e15D4TE8uXMELQHhSBEC2wHYIIOfKH8XCNMYbzkX06yuiY1u41mec1TesgBYKV3PW', X'D2A6D881052BECAA90E6BDA5DBAF542830D084', 'y,z', NULL);
INSERT INTO t3 (c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14, c15) VALUES (4582, 4362, 2120, 2003, '2023-01-01 10:35:52', 75, 23, 4, 15, 'sample_gPtaGnYsFMAlVwjqCJJU2QzwmdgOvBpGls5lvJFQyBnGEZz5NPkYK7scDSLaSiS0uRCXvLJgviwH0AlAvUmLhkaqnW3AEltUWHNIdnzTqBcHOsUDu0QeLyWliMU9G1LPvhB3X7ALnQc59TmIlaaa4zgbK8OiljOCbdK27haa6m0p5GSX5VOY0suuqipaSP3RX8Tu58dfASNpwe9hrhOIGVAoxmMySqppoJ2MNBUMG5rRTDFySlCqmXegIZSfV4pDHFb367Z4GCgUSrWBysl3pq2uoyW1d5rNvJ1knAew98VsBU7dh03J8aY0Moj4KnGi5expidhetPkwahDIEeqf4N5GoxWSxuJwVFpW2ijv0d6vgqGB21JRBw6RhtPqMP8qZq3zAr96npnFeMaiqehtxaWVpFY5Q9KT4xKsZhxz5NaLyodpM8PVejl5Et8SoV8RvknVMe5SjFrsSoXYqNgK15oTZwypMQkeRTflykZ5vZgX8nuBcQrIVohsdj1n4EmjKRSbPhewGn3IutqFRhBx4fpxQRAzCzp7Jf87TpSNxTHA3tu7HC6L4w7MuBmup4pTx8zm8HGcKX9DgQaJYzGHv2UaE1PM2eJ0x3fs6Y2oBJb1rsge59yR5wE72taYZGM6zFmF7nDntEKa7r57i5UZBKFNMgsmaHVvzvCWdNKzgS6q92Hlyxp9Gd529vHstvMxVwtd0ofNcUgA5hDcBlSUCDqGHYAemuS5mDvg8glOhyrgUdyetSDycRrlr61FVjKYgXW0Jp2s9XwssAsafhJTIP2wwgtQuLVZ4CbPlVneqOoVVU3mK5AGP4XOtQC7LQoorBtRx5HOAcTwGzLLpfiAKB1G45cCu1hUFv2t8YSUN20ooCAKrIbQKcz5bPGSvK17rpS5dYpHv76CJ0iQkEEJhAfyxWVOnwuMxanzt2f79DhC1C2Wo08OMJI70RkdU9uqjfrDmPmd2K9ZfXm1n4msB2m21Dl9e6VxAxCqgcAYADmEmkqnTgPZIV2qGWFa8Uad4YbLHcbvZQL8GsP6qXTmCDp2mB8l7C2fO5D4DWGMLQW6WcF1MBNebTqE4M1LRGxLO13aNuLb0uq9R0piXNz4tgwtPVPunfA01eKqShJFZBs8XlSb5Q025wUYPyF2tmXcFxJL9J4WTZxW6CwVycKgP8BGdXMAGcNf323dhwlYCr5enFrZ715sDEND0N79hjYrzBpU9H73T9qXmLkbfMzerqIFg9PKdWdUAGeDA3YuDEIlu7v7DZLMMcgYdclk0b1tbLLQix3FKk4On6yq5srcXheYdKkGLoKLFU883bNBafHG1U2ADpNtbzyw6UnqisFa9GR8NqDBoHjimj4Wddi4yacBYiZ33R3XW6zIUQC9gRexYiGYUIeFtmiQBZc0IpWJVZ8t49n7WXbTBy2JcDmBndn2yWYcfA4XrUuu5K5LGAmh4toVNEtBrglGcjhVIO5ptVhUfd7cMygMTK84GhNAUKMKzQ1AczxzYAGDyqV6Bbpm9676o58lGQClKdxYR5nKamhDGesLTj9No69pJwShExX2vfGIHPEXU0nN04u8dBDYYms21UIO2CpZcAUHc6hYmQRfFEynECKNgAlNHGMwhuqc6IAvbkvhE4TUxcRdXhSbg1U5q6yaWa2E1itUeH5H8E8PJlzH8yZmlAoaPluJzaMSQkKYU1tzA8bEaP70RLYcrCKvm5G7DE2sE9mCXBgXSrtgYzBgc9gT7IYvJ3Rn6uIIdD6KMyow0nO6QuB0CcWBDBgk3WKappl0CYsCDr5MHtk5f8BC7SXmJxOIZspgiD5yp9OOCbnt7KtWacjKQNNokC7DPE9WosuLUseg', 'sample_OMHD5WHEEeP825gAmH18ASwpqD0vYvORsqY1JeLMWv1WSXtxcKBge9eMlrt8UeUiKPtnRDLe7zuoeaiI0BBpG6bPMb4748Gm2MMEjEMRdiEm5VkF5QaLxVYgs6sG6EnjckihkivneYHGmNCgBVP9h0idYcjBp08sH7kN7o8xZS6XyAI2A8sln4cm', 'sample_jOWhHNwQUt1uJx2kPyP1w12xx0VmItQqrpMFoAK5Q5hzAwk6IdTs6Zs4O0fk3TBmFAOgiAO9uWZqt4c', X'4FEFAA9A7DEFA08134185EE2B8A908', 'y,x', NULL);
INSERT INTO t3 (c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14, c15) VALUES (5671, 6432, 994, 2007, '2023-01-01 03:06:53', 9, 46, 38, 20, 'sample_IgunjWtOnhzMxUH9Ad6ztAz1RATtk0dLGWZI04tEFxDc3YGNltqWLpjA1Zdiy0PzXAPr446Tqj0z4WKHyW7vRqz4XwCvGBYI2jaMMRvhftO4q2uNb8GqE4pITSPpgZnqO6QNHAMfDUSy413xdlhdBXRHUiFNmfld6A6pRgpBbo69hf6MpqhA4uKL4fT7lunYOzXI7ftuq3I8izzucoUA1LLfeMezTjFSYGQ5YWSq4wYPS4xh5ip5FdYmEHV1U6S3EBtFEjzgWSVcU', 'sample_2xSG6kX0B2smVHvvQD77wD26NFKaoY3vFA1Ty5whGT50gMyzP69v8mQNea4TTSnfikdbSOjlgnF3mpiXkmNPVHfDG5TP6E8Z3spsOedSyucPJ7iS91t4SXWQh5nEl70ciocI1tqu', 'sample_V9eyQD3ic2DoRT53i76gSpkmcH7Ge0SLXYqppVH1yO6thE1RMpOZxm6R', X'E9AF89E69587', 'z', NULL);

CREATE  INDEX idx_t1_c5 ON t1 (c5);
CREATE UNIQUE INDEX idx_t1_pk_c5 ON t1 (c1, c5);
CREATE  INDEX idx_t3_c10 ON t3 (c10(50));

WITH cte_350 AS (SELECT rtp15.c4 AS col_1, COS(rtp15.c9) AS col_2, rtp15.c3 AS col_3, COS(rtp15.c6) AS col_4 FROM t3 AS rtp15 USE INDEX (idx_t3_c10)) SELECT yth38.col_4 AS col_1, vfv58.c1 AS col_2 FROM t1 AS vfv58 USE INDEX (idx_t1_pk_c5) INNER JOIN cte_350 AS yth38 ON EXISTS(SELECT rel20.col_1 AS col_1 FROM cte_350 AS rel20 WHERE (vfv58.c4 = rel20.col_2) ORDER BY rel20.col_1 LIMIT 1) ORDER BY vfv58.c5 DESC;
WITH cte_350 AS (SELECT rtp15.c4 AS col_1, COS(rtp15.c9) AS col_2, rtp15.c3 AS col_3, COS(rtp15.c6) AS col_4 FROM t3 AS rtp15 USE INDEX (idx_t3_c10)) SELECT yth38.col_4 AS col_1, vfv58.c1 AS col_2 FROM t1 AS vfv58 USE INDEX (idx_t1_pk_c5) LEFT JOIN cte_350 AS yth38 ON EXISTS(SELECT rel20.col_1 AS col_1 FROM cte_350 AS rel20 WHERE (vfv58.c4 = rel20.col_2) ORDER BY rel20.col_1 LIMIT 1) ORDER BY vfv58.c5 DESC;