首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将mysql表的内容迁移到另一个表

将mysql表的内容迁移到另一个表
EN

Stack Overflow用户
提问于 2016-03-25 16:34:14
回答 2查看 49关注 0票数 0

我有一个小问题,我有两个mysql表"data“和"datas”,它们的结构是相同的。问题是,第一个数据表已经被填充,并且包含了我想迁移到第二个表"datas“的数据,但是我有一个字段,我只是添加了两个表--一个称为" status”的字段,在完成这个字段之前,我要检查状态是'pro‘还是'share’。但是在第一个表" data“上,由于我刚刚添加了status字段,前面存储的数据的状态为NULL。我想做的是制作一个脚本,接收所有存储的数据“数据”并对每一行进行验证,并在"status“字段中填充'pro‘或'part’,并将所有deuxièeme存储在表"datas”中。

我用Mysql。我需要一个脚本来检查每一行,看看状态是‘赞成’还是‘部分’,如果你有想法,不要犹豫告诉我。

数据表结构图

提前谢谢你。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-25 17:01:31

代码语言:javascript
复制
INSERT INTO DATAS(IDDATA, CONTENT, DATE, TOTAL, UPDATEDATE, STATUT)
SELECT 
    IDDATA, 
    CONTENT, 
    DATE, 
    TOTAL, 
    UPDATEDATE, 
    CASE VARIABLE
        WHEN 'CONDITION' THEN 'PRO'
        WHEN 'CONDITION' THEN 'PART'
        ELSE 'DEFAULT_VALUE'
    END AS STATUT
FROM DATA

如果在mysql版本上可用,您可以使用JSON_EXTRACT,但是json内容必须有良好的格式化。

代码语言:javascript
复制
JSON_EXTRACT('{"pk": "12", "order": "1234","type":"part"}', '$.type')

全例

代码语言:javascript
复制
INSERT INTO DATAS(IDDATA, CONTENT, DATE, TOTAL, UPDATEDATE, STATUT)
SELECT 
    IDDATA, 
    CONTENT, 
    DATE, 
    TOTAL, 
    UPDATEDATE, 
    CASE JSON_EXTRACT(CONTENT, '$.type')
        WHEN 'pro' THEN 'PRO'
        WHEN 'part' THEN 'PART'
        ELSE NULL
    END AS STATUT
FROM DATA
票数 0
EN

Stack Overflow用户

发布于 2016-03-25 16:55:49

假设所有字段在两个表中都有相同的顺序,状态是最后一个字段。

代码语言:javascript
复制
INSERT INTO datas(iddata,content, date, total, updatedate, statut)
    SELECT iddata,content, date, total, updatedate, 
           case when 1=1 then 'Pro' else 'Share' end as statut
    FROM data D 

显然,您必须更新案例声明,以适应规则,以确定pro与份额。

您应该能够使用萃取物()提取特定类型,假设它在json文档中始终处于相同的位置。

所以鉴于你的json文件..。就像..。不过,如果您不希望从case语句中获得确切的值,则可能需要将其包装在case语句中。您可能需要将字段“状态”更改为包含json的表中的正确字段名。

代码语言:javascript
复制
INSERT INTO datas(iddata,content, date, total, updatedate, statut)
    SELECT iddata,content, date, total, updatedate, 
           JSON_EXTRACT(status, "$.type") as statut
    FROM data D 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36224011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档