sql - 从现有表中的一列中选择不同的 varchar 值,转换为 int 并在一步内插入到临时表中

标签 sql sql-server t-sql

是否可以从现有表的 varchar 列中选择不同的值到临时表中,并同时在一条语句中将这些插入的值转换为 int?

如果是的话,语句结构会是什么?

如果不是,还有什么替代方法?

我尝试过以下方法:

Select DISTINCT Convert(int, column_name) Into #temp 
From source_table 
Where column_name IS NOT NULL

但 Microsoft SQL Server Management Studio 警告...

No column specified for column 1 of '#temp'.

...我不知道如何修复这个错误。

如果可能的话,我想避免打开游标来迭代现有表并迭代转换值。

最佳答案

Select DISTINCT cast(column_name as int) as column_name
 Into #temp From source_table Where column_name IS NOT NULL

关于sql - 从现有表中的一列中选择不同的 varchar 值,转换为 int 并在一步内插入到临时表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50258282/

相关文章:

php - 建议SQL查询

php - 需要帮助在 PHP 中从 SQL 连接多个表

sql - 如何在 T-SQL 中反转字符串中的值

sql - 条件 where Sql 服务器

插入语句中的 SQL 聚合

sql - 在这个特定的上下文中是否有更有效的方法来编写我的过滤器?

mysql - 选择包含所有指定值的 id(通配符冲突问题)MariaDB

Python SQL 从特定变量字段中选择行

sql-server - SSMS 中的列节点消失

sql-server - SQL Server : Isolation level leaks across pooled connections