对于一个穷人在客户端实现近似校正正确的排序,我需要一个JavaScript函数来在字符串中进行有效的单个字符替换.
这就是我的意思(请注意,这适用于德语文本,其他语言的排序方式不同):
native sorting gets it wrong: a b c o u z ä ö ü collation-correct would be: a ä b c o ö u ü z
基本上,我需要将所有出现的给定字符串的"ä"替换为"a"(依此类推).这样,本机排序的结果将非常接近用户期望的结果(或数据库将返回的内容).
其他语言有这样的设施:Python提供str.translate(),在Perl中tr/…/…/,XPath有一个函数translate(),ColdFusion有ReplaceList().但是JavaScript呢?
这就是我现在所拥有的.
// s would be a rather short string (something like
// 200 characters at max, most of the time much less)
function makeSortString(s) {
var translate = {
"ä": "a", "ö": "o", "ü": …Run Code Online (Sandbox Code Playgroud) latin1_swedish_ci当其他选项看起来更合理时,设置为编译默认值的原因是什么,latin1_general_ci或者utf8_general_ci?
Python默认按字节值排序,这意味着é来自z和其他同样有趣的东西.在Python中按字母顺序排序的最佳方法是什么?
有这个图书馆吗?我找不到任何东西.最好排序应该有语言支持所以它理解åäö应该用瑞典语中的z排序,但是ü应该用u等排序.因此,Unicode支持是非常必要的.
如果没有库,那么最好的方法是什么?只需从字母到整数值进行映射,然后将字符串映射到整数列表即可?
如何查看表格的排序规则?IE我想看到:
+-----------------------------+
| table | collation |
|-----------------------------|
| t_name | latin_general_ci |
+-----------------------------+
Run Code Online (Sandbox Code Playgroud) 我们必须使用Unicode类型时是否有规则?
我已经看到大多数欧洲语言(德语,意大利语,英语......)在VARCHAR列中的同一数据库中都很好.
我正在寻找类似的东西:
那么服务器/数据库的整理呢?
我不想像这里建议的一样使用NVARCHAR.varchar 和nvarchar SQL Server数据类型之间的主要性能差异是什么?
如果我有一个名为列名category_id和Category_Id,它们有什么不同?
如果我已经叫表category和Category,它们有什么不同?
我想在SQL中比较两个varchars,一个是类似的Cafe,另一个Café在SQL中有一种方法可以比较两个值.例如:
SELECT *
FROM Venue
WHERE Name Like '%cafe%'
Run Code Online (Sandbox Code Playgroud)
那么,如果有一个名称的场所,Big Bobs Café Extraordinaire它将被包含在结果集中?
我知道,我知道我在问题中写的内容我不应该感到惊讶.但我的情况是继续在继承的POS系统上工作,我的前任显然不知道JOIN,所以当我查看其中一个加载60秒的内部页面时,我发现它很快,将这8个查询重写为一个查询JOINs情况.问题是,除了不了解JOIN之外,他似乎也对多个数据库感到惊讶并且惊讶,他们使用不同的排序规则.事实上,我们使用所有"正常"的拉丁字符,说英语的人会考虑整个字母表,这整个事情将在几个月内不再使用,所以我只需要一个bandaid.
简而言之,我需要某种方法来转换为单个排序规则,因此我可以比较两个数据库中的两个字段.
确切的错误是:
无法在等于操作中解决"SQL_Latin1_General_CP850_CI_AI"和"SQL_Latin1_General_CP1_CI_AS"之间的排序规则冲突.
默认情况下 - Microsoft SQL Server中数据库的字符编码集是什么?
如何在SQL Server中查看当前字符编码?
是否有可以运行的脚本SQL或PHP脚本将更改数据库中所有表和字段的默认排序规则?
我可以自己写一个,但我认为这应该是像这样的网站上可以随时使用的东西.如果我在某人发帖之前能够拿出一个,我会自己发布.