tsql - 我可以在执行 SELECT INTO 时指定排序规则吗

标签 tsql collation

如果我从一个来源选择另一个来源,我可以同时指定排序规则。

例如

SELECT Column1, Column2
INTO DestinationTable
FROM SourceTable

'DestinationTable' 不存在的地方。

我知道我可以做类似的事情
SELECT Column1, Column2 COLLATE Latin1_General_CI_AS
INTO DestinationTable
FROM SourceTable

在我的实际问题中,列的数据类型事先不知道,所以我不能只将排序规则添加到每列。它位于使用大型讨厌的存储过程生成 SQL 的遗留应用程序的一个角落,我试图让它在一个新服务器上工作,该服务器在 tempdb 中具有不同的排序规则,而更改最少。

我正在寻找类似的东西:
SELECT Column1, Column2
INTO DestinationTable COLLATE Latin1_General_CI_AS
FROM SourceTable

但这不起作用。

最佳答案

您可以先创建表吗?

您可以为相关列定义排序规则。在 INSERT 时,它们将被强制执行。

听起来你不知道目标表的结构......所以不,你不能没有动态SQL。这会让事情变得更糟......

关于tsql - 我可以在执行 SELECT INTO 时指定排序规则吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7684349/

相关文章:

sql - 为什么 SQL Server 中 SELECT 2^3 返回 1?

Android:SQLite 中的自定义排序规则

mysql - 更改排序规则后替换多个表中的多个外来字符

mysql - 数据库值在特殊字符处被截断

SQL - 当过滤器值为空时选择全部

sql - 解释不带组使用时的 COUNT 返回值

tsql - 从 sql 中的一组行数据(具有特定 id)中获取所有树

Oracle nls_sort 在 postgres 中等效

mysql - 蒙古语的MySQL连接排序规则是什么?

mysql - 使用嵌套的选择查询插入到另一个表中