Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
5.5(EOL), 10.0(EOL), 10.1(EOL), 10.2(EOL), 10.3(EOL), 10.4(EOL)
Description
Collation aggregation for IN works differently for scalar and row arguments.
This script demonstrates the same problem:
SET NAMES utf8; |
SELECT
|
'i' = 'j' COLLATE utf8_roman_ci AS c1, |
('i') IN ('j' COLLATE utf8_roman_ci) AS c2, |
('i',1) IN (('j' COLLATE utf8_roman_ci,1),('j' COLLATE utf8_roman_ci,1)) AS c3; |
+----+----+----+
|
| c1 | c2 | c3 |
|
+----+----+----+
|
| 1 | 1 | 0 |
|
+----+----+----+
|
i and j are equal letters in utf8_roman_ci
So:
- c1 doing IN for scalar data returns the expected result
- c2 doing IN for ROW data with one value returns the expected result
- c3 doing IN for ROW data with more than one values returns a wrong result
Attachments
Issue Links
- relates to
-
MDEV-16454 Bad results for IN with ROW
- Closed