php - 将行列表从一个表传输到另一个表

标签 php mysql sql pdo mysqli

我到处搜索,但找不到可行的解决方案。也许我不会以正确的方式解决这个问题。 我有一个 ID 数组中的逗号分隔值列表,它引用了“temp_image”表中的 image_id。现在我需要选择关于该数组中所有带有 image_id 的图像的所有信息,并将它们从“temp_image”表转移到“images”表。

$IMgids = array(1,2,3,4,5,9); ETC 我的查询看起来如何? 我的 where 子句应该是什么样的。 我很乐意传输一行,但在这种情况下它可能多达 50 行。 我有什么想法可以解决这个问题吗?

最佳答案

根据您发布的少量信息,我认为您需要以下两个详细信息:

  1. WHERE 子句的 IN 运算符,以便您可以一次引用数组引用的所有条目:SELECT .. . FROM ... WHERE id IN (1,2,3,4,5,9);.您可能希望使用 phps implode() 函数在子句中构造 id 集:implode(',',$IMgids)

  2. 从另一个表读取的多行插入到一个表中的子查询原理。为此,请查阅 mysql(在线)文档。像这样:INSERT INTO images (SELECT * FROM temp_images WHERE...);

关于php - 将行列表从一个表传输到另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14122012/

相关文章:

sql - 如何使用 ozzo-dbx 包加入 PostgreSQL?

MySQL 条件插入与 insert .. select

php scandir() 不显示文件 - 只显示目录

php - 如何检测类属性是私有(private)的还是 protected

mysql - 连接 MySQL 中的 3 个表(3 深)

mysql - Mysql 中查询速度慢,性能不佳。 mysql-slow.log 中查询时间较长

php - 在另一个文件中扩展类的正确方法是什么?

php - 用户 ID 的 SQL 更新

mysql - rake db :migrate error: db_development. 位置不存在:显示 `locations` 的完整字段

php - 当页面第一次加载时触发事件,此后没有其他时间