【问题标题】:How to duplicate / clone sql records with a diffrent id in PHP?如何在 PHP 中复制/克隆具有不同 ID 的 sql 记录?
【发布时间】:2012-04-12 23:55:06
【问题描述】:

我的数据库结构如下:

P_Id    content     FirstName   
1       Hansen      Timoteivn 10    
1       Svendson    Tove    
1       Pettersen   Kari 

我希望能够复制 P_Id 为 1 的每个条目,将 P_id 替换为 2。在语句的末尾我希望:

P_Id    content     FirstName   
1       Hansen      Timoteivn 10    
1       Svendson    Tove    
1       Pettersen   Kari 
2       Hansen      Timoteivn 10    
2       Svendson    Tove    
2       Pettersen   Kari 

任何帮助都会很棒!

我的问题有更新。如果表包含多个条目并且我想针对特定行怎么办?例如:

P_Id    content      FirstName   
1       Hansen1      Timoteivn 101    
1       Svendson1    Tove1    
1       Pettersen1   Kari1
2       Hansen2      Timoteivn 102    
2       Svendson2    Tove2    
2       Pettersen2   Kari2
3       Hansen3      Timoteivn 103    
3       Svendson3    Tove3    
3       Pettersen3   Kari3

如何将每个值为 2 的 P_ID 复制到值为 4 的 P_ID?结果:

P_Id    content     FirstName   
1       Hansen1      Timoteivn 101    
1       Svendson1    Tove1    
1       Pettersen1   Kari1
2       Hansen2      Timoteivn 102    
2       Svendson2    Tove2    
2       Pettersen2   Kari2
3       Hansen3      Timoteivn 103    
3       Svendson3    Tove3    
3       Pettersen3   Kari3
4       Hansen2      Timoteivn 102    
4       Svendson2    Tove2    
4       Pettersen2   Kari2

谢谢大家,这是我正在构建的网站的最后一部分!

【问题讨论】:

    标签: php sql clone record


    【解决方案1】:

    要将 P_Id 为“x”的所有记录复制到 P_Id 为“y”(其中 x 和 y 是数字),SQL 将是

    INSERT INTO yourtable 
        SELECT y AS 'P_Id', content, FirstName 
        FROM yourtable 
        WHERE P_Id = x
    

    记得将“yourtable”替换为您的表名!

    【讨论】:

    • INSERT INTO yourtable SELECT (SELECT MAX(P_Id)+1 FROM yourtable) AS 'P_Id', content, FirstName FROM yourtable
    • 这很好,但是如果表包含多个条目并且我想定位特定行怎么办?例如:P_Id 内容 FirstName 1 Hansen Timoteivn 10 1 Svendson Tove 1 Pettersen Kari 2 Hansen Timoteivn 10 2 Svendson Tove 2 Pettersen Kari
    • 这很好,但是如果表包含多个条目并且我想定位特定行怎么办?例如: P_Id 内容 FirstName 1 Hansen1 Timoteivn 101 1 Svendson1 Tove1 1 Pettersen1 Kari1 2 Hansen2 Timoteivn 102 2 Svendson2 Tove2 2 Pettersen2 Kari2 3 Hansen3 Timoteivn 103 3 Svendson3 Tove3 3 Pettersen3 Kari3 我将如何将每个值为 2 的 P_ID 复制到P_ID 为 4?结果:
    猜你喜欢
    • 2012-12-23
    • 1970-01-01
    • 1970-01-01
    • 2021-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多