Inconsistent use of column alias In ORDER BY clause that specified collation
Bug #861763 reported by
Timour Katchaounov
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MariaDB |
Confirmed
|
Wishlist
|
Timour Katchaounov |
Bug Description
This bug is created to track MySQL BUG#59449, and to review and
either apply or reimplement a contributed patch for this bug.
Changed in maria: | |
importance: | Undecided → Critical |
assignee: | nobody → Timour Katchaounov (timour) |
Changed in maria: | |
status: | In Progress → Confirmed |
importance: | Critical → Medium |
status: | Confirmed → Triaged |
Changed in maria: | |
importance: | Medium → Wishlist |
status: | Triaged → Confirmed |
To post a comment you must log in.
Much shorter test case:
CREATE TABLE Language ( utf8_unicode_ ci;
LanguageID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
LanguageName VARCHAR(40) NOT NULL,
PRIMARY KEY (LanguageID),
KEY LanguageName (LanguageName) )
ENGINE=MyISAM
DEFAULT CHARSET=utf8
COLLATE=
INSERT INTO Language VALUES
(1, 'English'),
(2, 'Spanish'),
(3, 'American Sign Language'),
(4, 'Argentinian Sign Language');
-- works as expected - no collation - sorted by alias to a function result (alias has name matching a real field from a queried table)
substr( LanguageName, 2) as LanguageName
SELECT LanguageID,
FROM Language
ORDER BY LanguageName;
-- broken - collated - sorted by alias to a function (coalesce) result (alias has name matching a real field from a queried table)
substr( LanguageName, 2) as LanguageName
SELECT LanguageID,
FROM Language
ORDER BY LanguageName COLLATE utf8_spanish_ci;
-- broken - collated - sorted by alias to a column (alias has name matching a real field from a queried table)
substr( LanguageName, 2) as LanguageNameSubstr
SELECT LanguageID as LanguageName,
FROM Language
ORDER BY LanguageName COLLATE utf8_spanish_ci;
drop table Language;