我有一个基本的SQL问题,这让我很生气.如果我有一个mySQL表,例如下面.如何从第一个空行开始向列2添加另外80个以上的值(在此示例中为第3行).
我一直在使用INSERT或UPDATE尝试一些查询,但最接近的是从最后定义的ID值(例如,行80ish)开始将值添加到第2列.
ID | Column 2 |
--------------------------------
1 | value |
2 | value |
3 | |
4 | |
5 | |
etc
Run Code Online (Sandbox Code Playgroud)
真正的表有大约10列,都有数据,但我只需要添加内容(CSV格式的大约80个不同字符串的列表到其中一列)
如果有人能指出我正确的方向,我会很感激.
我将数据加载到具有相同结构的单独表中,然后使用联接或子查询更新目标表以确定哪些列当前为空。
即加载临时表然后:
update target_table set column2 = (select column2 from interim_table where ...
where column2 is null
Run Code Online (Sandbox Code Playgroud)
(缓慢但直观)
update target table, interim_table
set target table.column2 = interim_table.column2
where target table... = interim_table...
and target_table.column2 is null
Run Code Online (Sandbox Code Playgroud)
(更好的性能)