gpt4 book ai didi

sql - 如何删除/重命名 SQL 中的重复列(非重复行)

转载 作者:行者123 更新时间:2023-12-04 21:30:27 24 4
gpt4 key购买 nike

当尝试从 Sybase 到 Microsoft SQL 执行 OPENQUERY 时,我遇到了一个错误:

Duplicate column names are not allowed in result sets obtained through OPENQUERY and OPENROWSET. The column name "PatientID" is a duplicate.



我构建的查询基于相似的准入 ID 和患者 ID 连接了 2 个表。

例如:
PatID   AdmID   Loc  PatID  AdmID   Doctor 
1 5 NC 1 5 Smith
2 7 SC 2 7 Johnson

真正的查询当然有比这更多的信息。

是否有重命名或删除 AdmID 和 PatID 列之一的好方法?

我尝试:
SELECT * INTO #tempTable
ALTER #tempTable
DROP COLUMN PatID

这不起作用,因为 PatID 不明确。

我也尝试过:
SELECT firstTable.PatID as 'pID', * FROM...

这也不起作用。

最佳答案

您必须为两个重复列之一添加别名,并至少为其中一个表(您在其列上使用别名的那个)在选择中明确指出特定列:

 SELECT firstTable.PatID as 'pID', firstTable.column2, secondTable.* FROM...

请注意,我仍然在 secondTable 上使用了通配符。

然而....

我会避免使用 *通配符,并尝试始终准确指示您需要的列。

关于sql - 如何删除/重命名 SQL 中的重复列(非重复行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30327357/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com