gpt4 book ai didi

mysql - 使用表 2 中的数据更新表 1

转载 作者:行者123 更新时间:2023-11-29 21:03:56 24 4
gpt4 key购买 nike

在阅读了许多论坛并尝试了许多示例之后,我似乎仍然无法将旧的 mySQL 查询转换为 SQL Server 2008。我读过的许多示例包括当在表 2 中找到单个值时更新表 1 中的列。我使用的旧 mySQL 脚本是

UPDATE stock.tbldesk_inv As T1
inner JOIN stock.deskinvfix AS T2 ON T1.serial_number = T2.SN
SET T1.location = T2.Location,
T1.asset_number = T2.AssNumber,
T1.department = T2.dept,
T1.status = T2.Status,
T1.first_name = T2.firstn,
T1.last_name = T2.lastn;
DELETE FROM stock.deskinvfix;
SELECT * FROM stock.deskinvfix;

我发现令人沮丧的是我可以简单地更改表名称以重新使用简单的查询

因为我无法将我的表重新命名为 T1 或 T2,这使得新查询难以遵循。就我个人而言,我希望我能继续使用 mySQL。

UPDATE [InventoryDatabase].[dbo].[Hardware_Inventory] SET
[InventoryDatabase].[dbo].[Hardware_Inventory].ComputerName = [InventoryDatabase].[dbo].[updatepcname].SCCMName
FROM [InventoryDatabase].[dbo].[Hardware_Inventory]
INNER JOIN [InventoryDatabase].[dbo].[updatepcname] ON [InventoryDatabase].[dbo].[Hardware_Inventory]
WHERE [InventoryDatabase].[dbo].[Hardware_Inventory].SerialNumber = [InventoryDatabase].[dbo].[updatepcname].SCCMSerial

谁能告诉我为什么 SQL Server 不喜欢我使用的 mySQL 查询?

最佳答案

这应该有效...

UPDATE T1
SET T1.ComputerName = T2.SCCMName
FROM Hardware_Inventory as T1
INNER JOIN updatepcname as T2 ON T1.SerialNumber = T2.SCCMSerial

诺埃尔

关于mysql - 使用表 2 中的数据更新表 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36983257/

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