我在数据库中有一个新表来跟踪标记,如下所示:

    TAG NAME | IMAGE ID

    funny       570
    funny       571
    dog         649

我有一张旧桌子可以追踪标签,比如:
TAG ID | TAG NAME | IMAGES IDS

11       funny       570,571,572,573,574,575,576,577,578,579,580,581,58...
12       dog         649,650,651,652,653,654,655,656,657,658,659,660,66...
13       cat         844,845,846,847,848,849,850,851,852,853,854,855,85...

我需要将所有旧的图像id/关联的标记添加到新表中

最佳答案

如果我没有错,您想将旧表记录添加到新表中。
所以您只需要查询旧表并分解imgid,循环遍历分解后的字符串并将其添加到新表中。
示例代码。

<?php

    $query = mysqli_query("SELECT * FROM oldTable")or die(mysqli_error());
    while($row = mysql_fetch_assoc($query))
    {
        $ids = explode(",",$row['imageID']);

        foreach($ids as $newImgId)
        {
            $Insert_query = mysqli_query("INSERT INTO NEWTABLE ('tagname','img_id') VALUES ('".$row['tag']."','".$newImgId."')")or die(mysqli_error());
        }
    }

关于php - MYSQL将旧列添加为新表中的行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14514991/

10-12 02:38