You have to use binary collation. Certain alphanumeric collations ignore the '-' (hyphen) among others.
DECLARE @SwedishFinnish TABLE (Word nvarchar(70));
INSERT @SwedishFinnish VALUES
('aggr_gem-01'),
('aggr_gem01_mirr-01'),
('aggr_gem01_mirr-10'),
('aggr_gem01-04'),
('aggr_gem01-12'),
('aggr_gem-02'),
('aggr_gem-01');
SELECT * FROM @SwedishFinnish ORDER BY Word; -- USA default collation
/*aggr_gem-01
aggr_gem-01
aggr_gem01_mirr-01
aggr_gem01_mirr-10
aggr_gem01-04
aggr_gem01-12
aggr_gem-02 */
SELECT * FROM @SwedishFinnish ORDER BY Word COLLATE Finnish_Swedish_CI_AS;
/*aggr_gem-01
aggr_gem-01
aggr_gem01_mirr-01
aggr_gem01_mirr-10
aggr_gem01-04
aggr_gem01-12
aggr_gem-02*/
SELECT * FROM @SwedishFinnish ORDER BY Word COLLATE SQL_Latin1_General_Cp850_BIN;
/*
aggr_gem-01
aggr_gem-01
aggr_gem-02
aggr_gem01-04
aggr_gem01-12
aggr_gem01_mirr-01
aggr_gem01_mirr-10
*/
Collation blog: http://ift.tt/1l1XhUP
Kalman Toth Database & OLAP Architect SQL Server 2014 Design & Programming
New Book / Kindle: Exam 70-461 Bootcamp: Querying Microsoft SQL Server 2012
No comments:
Post a Comment