mysql - 如何从 MySQL 中的临时表中填充表的列
问题描述
我有一张三列的桌子;其中两个当前填充了 NULL 值。我已将第一列(包含数据)拆分为存储在临时表中的两列:
CREATE TEMPORARY TABLE IF NOT EXISTS temp_storage AS (
select LEFT(column1, POSITION('_' IN column1) - 1),
RIGHT(column1, POSITION('_' IN REVERSE(column1)) - 1)
FROM table1
);
现在我需要获取该数据并用该数据填充两个空列。我尝试使用这个:
INSERT INTO table1(column2, column3)
SELECT * FROM temp_storage;
但是,这只会创建新行并用这些数据填充第 2 列和第 3 列,而在这些行中将第 1 列保留为 NULL。
有没有一种有效的方法来填充临时表中的现有行?
解决方案
我假设您column1
在每种情况下都在同一行中填写空白列?
你为什么不使用UPDATE
?那么你不需要临时表。
UPDATE table1
SET column2 = LEFT(column1, POSITION('_' IN column1) - 1),
column3 = RIGHT(column1, POSITION('_' IN REVERSE(column1)) - 1)
推荐阅读
- javascript - 如何在 redux 中间件中调度一个动作?
- c# - 在 IIS 下运行时无法连接到 Elasticsearch(访问密钥和秘密不被尊重)
- apache-kafka - td-agent fluentd 无法向 Kafka 发送消息
- html - 我想根据用户的输入显示结果而不重新加载页面!(对于 html 中的 Wordpress 网页设计?)
- javascript - 在javascript中更改图表高度和宽度属性
- gcc - 如何在 gcc 内联汇编中引用 r8-r15 寄存器?
- c# - 停止 ADK/DLL 写入控制台
- python-3.x - Tensorflow 神经网络:我的模型每次都给出 1.0 的准确度
- c# - UWP 中的 Xamarin Forms MasterDetailPage 按钮填充问题
- c++ - 在 Rcpp 中使用多参数目标函数调用 numDeriv:hessian()