SAP HANA 中的 ORDER BY 子句与 SQL Server 不同?

DB_*_*ist 1 sql case-insensitive hana

ORDER BY在 SAP HANA 中使用一个子句:

SELECT a
FROM (
    SELECT 'r' AS A FROM DUMMY
    UNION
    SELECT 'V' FROM DUMMY
    UNION
    SELECT 'a' FROM DUMMY
    UNION
    SELECT 'A' FROM DUMMY
) a
ORDER BY A
Run Code Online (Sandbox Code Playgroud)

在 SAP HANA 中,结果是:

A
A
V
A
r

但在 SQL Server 中运行时,结果是:

A
A
A
r
V

为什么这个顺序不同?我们可以在 SAP HANA 的数据库级别访问并查看此设置吗?如何在 HANA 中获得与 SQL Server 中相同的排序?

Nin*_*rry 5

您正在寻找的是对collation行进行排序时使用的。排序规则指定对文本字符串应用哪种排序。它对于决定如何对小写和大写字符进行排序以及如何对带有变音符号的字符进行排序尤其相关。

\n

在 SAP HANA 中,您可以在创建数据库时为整个数据库指定默认排序规则、在创建表时为表列指定排序规则或指定用作子句的一部分的排序规则orderby

\n

要查看可用的排序规则,请检查COLLATIONS系统视图。

\n

为了将排序规则指定为 orderby 子句的一部分,请参阅以下示例:\xc2\xa0

\n
 select * from mytable \n     order by col1 \n     COLLATE TURKISH;\n
Run Code Online (Sandbox Code Playgroud)\n

https://answers.sap.com/answers/12900664/view.html

\n
\n

另请参阅排序规则是什么意思?

\n