php - 从数据库中检索两个表数据并使用 php 显示并插入到新表中
问题描述
我有两个名为 input 和 out_materials 的表。这些是两个表的字段和数据
第一个表:输入
材料_代码 | 材料_名称 | 单位 | in_qty
m219,mat1,个,215
第二张表:out_materials
材料_代码 | 材料_名称 | 单位 | out_qty
m219 , mat1 , pcs , 15
第三张表:总计
材料_代码 | 材料_名称 | 单位 | 数量| out_qty | 数量
m219 , mat1 , pcs , 215 ,15 ,200
注意:我尝试从第一个表和第二个表中获取数据,并将这个获取数据插入到第三个表中。我的代码在下面给出,但它不起作用。
$res=mysqli_query($con, "SELECT i.* , o.* FROM input i,out_materials o WHERE i.Materials_name=o.Materials_name");
while($row=mysqli_fetch_array($res)){
$inm_code = $row['Materials_code'];
$inm_name = $row['Materials_name'];
$inunit = $row['Unit'];
$inqty = $row['Input_qty'];
$outm_code = $row['Materials_code'];
$outm_name = $row['Materials_name'];
$outunit = $row['Unit'];
$outqty = $row['Out_qty'];}
$sql2=mysqli_query($con, "INSERT INTO total (Materials_code,Materials_name,Unit,Input_qty,Out_qty) VALUES('$inm_code','$inm_name','$inunit','$inqty','$outqty')");
解决方案
$res=mysqli_query($con, "SELECT i.* , o.* FROM input i,out_materials o WHERE i.Materials_name=o.Materials_name");
while($row=mysqli_fetch_array($res)){
$inm_code = $row['Materials_code'];
$inm_name = $row['Materials_name'];
$inunit = $row['Unit'];
$inqty = $row['Input_qty'];
$outm_code = $row['Materials_code'];
$outm_name = $row['Materials_name'];
$outunit = $row['Unit'];
$outqty = $row['Out_qty'];
$sql2=mysqli_query($con, "INSERT INTO total (Materials_code,Materials_name,Unit,Input_qty,Out_qty) VALUES('$inm_code','$inm_name','$inunit','$inqty','$outqty')");
} //notice
你$sql2
在 while 循环之外,这就是为什么它只插入最后一行。
推荐阅读
- rust - 在 Rust 中,如何在一个向量向量中合并两个子向量?
- dask - 如何使用分布式 dask 调度程序在工作人员上加载文件?
- c# - 是否可以将应用程序放在 Windows 屏幕保护程序上?
- node.js - 我想为昵称已更改的用户分配角色
- javascript - 全日历 JSON/AJAX
- php - 在 Laravel 中使用 DataTables 进行多重搜索
- reactjs - 如何使用 CORS 在 Internet Explorer 上进行身份验证是否有任何扩展?
- r - “通过引用更新”和滚动连接的组合产生与滚动条件预期相反的结果
- python - 如何仅复制已存在的目标文件上更改的文件内容?
- c++ - What is the memory layout of vector of arrays?