Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将数据从一个表转移到另一个表并删除任何重复_Php_Mysql - Fatal编程技术网

Php 将数据从一个表转移到另一个表并删除任何重复

Php 将数据从一个表转移到另一个表并删除任何重复,php,mysql,Php,Mysql,我有两张桌子:马克和用户。我想从user_student获取列数据“sid”,并将其插入表“marks”列“stud_id”中。这是我的密码 $query= "REPLACE INTO marks (stud_id)SELECT sid FROM user_student"; mysql_query($query) or die('An Error occurred' .mysql_error()); 现在的问题是,我每次都需要执行这个查询,我不希望它复制数据,而是只在有新数

我有两张桌子:马克和用户。我想从user_student获取列数据“sid”,并将其插入表“marks”列“stud_id”中。这是我的密码

$query= "REPLACE INTO marks (stud_id)SELECT sid FROM user_student";

        mysql_query($query) or die('An Error occurred' .mysql_error());
现在的问题是,我每次都需要执行这个查询,我不希望它复制数据,而是只在有新数据时插入,否则什么也不做。我也尝试过插入忽略,但没有结果。任何帮助请只插入那些尚未插入的SID。您需要从插入的同一个表中选择另一个子查询来欺骗MySQL:

insert into marks (stud_id)
select sid 
from user_student
where sid not in 
(
    select * from (select distinct stud_id from marks) alias_name
)

它工作正常,现在我希望添加更多值,不是从表中添加,而是从表“marks”中的colummoduleId中添加自定义值。下面是我的代码:$query=insert into marks student_id,moduleIDselect sid from user_student,其中sid不在select中*from select distinct student stude_id from marks alias_name,VALUES1;Am GET errorUse:在标记中插入螺柱id,moduleID select sid,1来自用户学生,其中sid不在select*中来自选择不同螺柱id来自标记别名