php - Mysql查询并查找值是否存在

标签 php mysql

我用这段代码来比较并查找 2 个 CSV 文件(每列 1 列,每行 1 个 EAN 代码)与 array_diff 在两个方向上的差异:

<?php 
mysql_connect('LOCALHOST', 'db', 'passwd') or die(mysql_error()); 
mysql_select_db("db") or die(mysql_error()); 

$update_table = "ps_product"; 

$file1 = file('1.csv');
$file2 = file('2.csv');


$diff  =  array_diff($file1, $file2);
$diff2  = array_diff($file2, $file1);


$diffjoined = array_merge($diff, $diff2);

?>

现在我必须知道在合并的数组中,数据库内是否有相应的值,然后将数量设置为0:

    If "a value inside array ($diffjoined) was found in DB"
  foreach "ean code found in DB"

mysql_query ("UPDATE $update_table SET quantity='0' WHERE ean13 IN ($diffjoined) ");

最佳答案

我假设您的 $diffjoined 是代码中的 ean13 列表。

您的 SQL 查询已结束

$eans = "'".implode("','", $diffjoined)."'";
$q = "UPDATE $update_table SET quantity='0' WHERE ean13 IN ($eans)";
mysql_query($q);

关于php - Mysql查询并查找值是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25293026/

相关文章:

php - preg_match 排除一个数字

php - MySQL/PHP - 获取不同的行

c# - MySqlException (0x80004005) : There is already an open DataReader associated with this Connection which must be closed first

mysql - 使用 node-mysql,我怎么能不转义 mysql 函数?

mysql - 更改 Docker 容器中的 mysql 密码

php - 如何防止、应对或补偿空/NULL 字段 (MySQL) 返回空集

PHP foreach 循环 JSON

php 通过 .htaccess 注册全局变量开/关

php - 如何在 ChoiceType Symfony Form Builder 中默认选中一些复选框选项?

mysql - 改进 SQL 查询,以便按 "external"表中存储的值过滤结果