gpt4 book ai didi

sql-server-2005 - 如何在 T-SQL 中选择一个数据库中的数据,并使用它在另一个数据库中插入行?

转载 作者:行者123 更新时间:2023-12-03 01:32:12 26 4
gpt4 key购买 nike

我试图不编写应用程序来执行此操作,同时提高我的 SQL 魔力...

假设我在一个数据库表 Database1.dbo.MyTable 中有数据,其中包含以下列:

  • 对象类型
  • 对象 key ID

有数千行。

Database2.dbo.MyOtherTable中,我的架构略有不同,比方说:

  • 我的 key
  • 我的值(value)

我想从 Database1.dbo.MyTable 获取数据,并将每行数据用作 Database2.dbo.MyOtherTable 的 INSERT。

我的猜测是我必须在 while 循环中建立一个游标,但不确定执行此操作的确切语法,或者是否有更好的方法。为此使用的最佳技术/语法是什么?

编辑:这是我最终使用的内容(此示例中的字段已更改),除了在插入之前确保键存在之外,效果很好:

INSERT INTO Database2.dbo.MyOtherTable (MyKey, MyValue)
SELECT ObjectType, ObjectKeyID FROM Database1.dbo.MyTable
WHERE ObjectType LIKE 'Widget' AND ObjectKeyID > 0 AND ObjectKey IN (SELECT UserAccountID FROM MyUsers)

最佳答案

您可以(如果可能的话应该)避免使用光标:

INSERT INTO Database2.dbo.MyOtherTable (MyKey, MyValue)
SELECT ObjectKeyID, ObjectType FROM Database1.dbo.MyTable

关于sql-server-2005 - 如何在 T-SQL 中选择一个数据库中的数据,并使用它在另一个数据库中插入行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5697826/

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