SQL Server排序规则
在使用数据库的过程中,总会碰到一些特别的需求。有时候需要储存中文字符,区分大小写或者按照中文的比划顺序排序。这就涉及到了对数据库排列规则的选择。
我们一般可以选择数据库名称--》右键属性(Properties)--》功能(optiotion)--》排序方式(Collation)选择。
* 由于没有中文版的数据库,中文翻译可能有误。

那这些不同的排序方式究竟有什么区别呢?
排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集。 如:
Chinese_PRC_CI_AS 前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。
排序规则的后半部份即后缀 含义:
- _BIN 二进制排序
- _CI(CS) 是否区分大小写,CI不区分,CS区分
- _AI(AS) 是否区分重音,AI不区分,AS区分
- _KI(KS) 是否区分假名类型,KI不区分,KS区分
- _WI(WS) 是否区分宽度 WI不区分,WS区分
区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。
区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项,比较还将重音不同的字母视为不等。
区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。
区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项。
我们可以在系统函数sys.fn_helpcollations 查看到所有的排序规则。在SQL Server2014 中共有3887种。
select * from sys.fn_helpcollations()
除了改变整个数据库的排序方式外,我们还可以在使用order by的时候制定排序方式,如:
select *
from [dbo].[cs_Appliction]
order by [AppName] collate Chinese_PRC_CS_AS_KS_WS
SQL Server排序规则的更多相关文章
- 利用脚本修改SQL SERVER排序规则
		利用脚本修改SQL SERVER排序规则 编写人:CC阿爸 2014-3-1 l 今年的一项重要工作是对公司所用系统进行繁简的转换,程序转成简体基本很容易解决,但数据库转换成简体,就没那么容易了.经 ... 
- SQL Server 排序规则的影响
		目录 SQL Server 排序规则 影响 效果演示 更改数据库排序规则 服务器级排序规则 数据库级排序规则 列级排序规则 查询时指定规则 建议 使用 Unicode 数据类型 使用二进制排序规则 [ ... 
- sql server ------创建本地数据库 SQL Server 排序规则
		sql server完整复制数据库 sql server导入导出方法 SQL Server 排序规则 
- sql server 排序规则
		/* 排序规则根据特定语言和区域设置的标准指定对 字符串 数据 进行排序和比较的规则. 以 ORDER BY 子句为例:如果按升序排列,说英语的人认为字符串 Chiapas 应排在 Col ... 
- 根据SQL Server排序规则创建顺序GUID
		public static class GuidUtil { , , , , , , DateTimeKind.Utc).Ticks / 10000L; /// <summary> /// ... 
- SQL Server排序规则不一致 - Collate Database_Default
		http://www.cnblogs.com/chencidi/archive/2014/07/02/3820386.html 使用多库查询时会出现排序规则冲突的问题 解决办法 在字段后面添加Coll ... 
- Sql Server 排序规则字符集的冲突问题
		可通过如下sql 进行修改: 如果整个DB都不一致: Alter database Expense_Portal collate Chinese_PRC_CI_AS 某张Table的栏位不一致: ) ... 
- 修改SQL Server 排序规则 (未能排它地锁定数据库以执行该操作)
		use master go alter database DBName set single_user go alter database DBName COLLATE Chinese_PRC_CI_ ... 
- SQL Server排序函数row_number和rank的区别
		SQL Server排序函数row_number和rank的区别 直接看测试结果 declare @table table(name varchar(100),amount int, memo var ... 
随机推荐
- idea java 正则表达式匹配替换
			原文匹配中文 excelMap.get\((\"[\u4E00-\u9F15]+\")\) 目标 excelMap.get\($1.hashCode\(\)\) 
- 应用HTK搭建语音拨号系统4: 识别器评估
			选自:http://maotong.blog.hexun.com/6261890_d.html 苏统华 哈尔滨工业大学人工智能研究室 2006年10月30日 声明:版权所有,转载请注明作者和来源 该系 ... 
- 【GoLang】tcmalloc && jemalloc
			https://www.douban.com/note/512625720/ http://blog.csdn.net/hanxin1987216/article/details/8156010 ht ... 
- Angularjs与bootstrap.datetimepicker结合实现日期选择器
			http://www.lovelucy.info/angularjs-best-practices.html http://damoqiongqiu.iteye.com/blog/1917971 ht ... 
- Expression Add Operators
			Given a string that contains only digits 0-9 and a target value, return all possibilities to add bin ... 
- Qt     信号槽如何传递参数(或带参数的信号槽)
			信号槽如何传递参数(或带参数的信号槽) 利用Qt进行程序开发时,有时需要信号槽来完成参数传递.带参数的信号槽在使用时,有几点需要注意的地 ... 
- liunux mysql MySQL表名不区分大小写的设置方法
			原来Linux下的MySQL默认是区分表名大小写的,通过如下设置,可以让MySQL不区分表名大小写:1.用root登录,修改 /etc/my.cnf:2.在[mysqld]节点下,加入一行: lowe ... 
- C++函数传递指针面试题
			[本文链接] http://www.cnblogs.com/hellogiser/p/function-passing-pointer-interview-questions.html [代码1] ... 
- ios UIButton shadowcolor 导致黑边问题
			注意这个属性,会导致按钮文字有一定黑边,其实就是阴影效果,如果不是想要的效果,应该把它设置为clearcolor.这种情况在亮色背景下比较突出. 
- 6.nodejs权威指南--进程
			1. 进程 var net = require('net'); var cluster = require('cluster'); cluster.setupMaster({ exec:'child. ... 
