Thursday, August 28, 2014

Sort order - Finnish_Swedish_CI_AS

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