在Postgres整理的目的

时间:2016-06-23 06:54:33

标签: sql postgresql

我是Postgres的新手。我刚开始从here学习它。我从select语句中找到了COLLATE“C”

SELECT not_equal(first_name, last_name COLLATE "C")

我想知道COLLATE“C”会做什么?

1 个答案:

答案 0 :(得分:12)

排序规则用于对字符串(文本)进行排序,例如按字母顺序排列,是否重要,如何处理具有重音的字母等.COLLATE“C”告诉数据库根本不使用排序规则。如果他们设计一个数据库来保存不同语言的数据,就可以使用它。从技术上讲,COLLATE“C”将使用字节顺序来驱动文本比较。

https://dba.stackexchange.com/questions/94887/what-is-the-impact-of-lc-ctype-on-a-postgresql-database上的第一个答案提供了使用COLLATE“C”与使用法语本地化的COLLATE“fr_FR”之间差异的一个很好的例子。