首页 > 解决方案 > SQL Server:如何在创建临时表时省略“CreatedOn”列?

问题描述

我有一个查询(类似于下面的查询)应该从连接创建一个临时表:

SELECT p.pid,* 
INTO #temp_insert_inventory
FROM 
    (SELECT *
     FROM main_inventory.dbo.Inv i
     LEFT JOIN web_inventory.dbo.Variant v ON i.id = v.ext4
     WHERE v.ext4 IS NULL
       AND i.qty > 0) PL
INNER JOIN web_inventory.dbo.Product p ON PL.invcode = p.ext

问题是 SQL Server 拒绝创建临时表,因为CreatedOn选择返回了多个列。

我真的不需要这些列中的任何一个,所以我怎么能在选择中省略它?

谢谢!

标签: sql-server

解决方案


列出所有列而不是SELECT *.

如果您需要两个版本的冲突CreatedOn列,则可以为其中之一使用别名。如果您根本不想要附加列,则不要将其包含在SELECT列表中。


要踢的坏习惯:使用 SELECT * / 省略列列表


推荐阅读