在sql中更新表[关闭]
Posted
技术标签:
【中文标题】在sql中更新表[关闭]【英文标题】:updating table in sql [closed] 【发布时间】:2019-03-06 17:03:00 【问题描述】:我有来自 sql 查询的数据,我需要在表中更新这些数据。我将此查询的输出保存为 csv 文件。当我使用导入导出向导在 sql 中加载此文件时,由于在很多情况下列发生了变化,数据都变得混乱了。因此,不相关的数据会在许多列中更新。
这可能是什么原因,请提出解决方案。
问候, 普里耶什
【问题讨论】:
为什么不直接从查询中插入到表中呢?浏览 CSV 文件似乎不必要地复杂。 正确标记。 SQL 服务器 mysql。这是哪一个??? 嗨,戈登,我该怎么做?我无法创建临时表,因为这需要与团队共享,而且我的数据中有近 150 列。 嗨,Eric,修改了标签 通常,此类问题是由于在数据元素为 NULL 或为空时未正确添加数据元素造成的。例如,如果您只是添加First Name, Middle Name, Last Name
元素,则没有中间名的输出应该类似于“My”、“Name”。有时,连接步骤会在附加数据之前检查数据。由于没有中间名元素,这将导致像“My”、“Name”这样的输出,而空数据元素缺少逗号。要检查,请计算问题行中的逗号。
【参考方案1】:
这里明显的答案是使用插入到选择语法。如果您已经有一个已生成数据的查询,请将其直接插入到您想要的位置,而无需保存到 CSV。
INSERT INTO target_table
SELECT * FROM your_original_query
如果问题是手动写出 150 列表的大部分列名,这里有一个技巧。在 SSMS 中,单击相关表的 Columns 文件夹,然后将其拖到新的查询窗口中。您将获得该表的所有列名的列表。 (然后你可以删除一些你不需要的。)
【讨论】:
以上是关于在sql中更新表[关闭]的主要内容,如果未能解决你的问题,请参考以下文章