MySQL 结果是 0,尽管我可以在表中看到它

标签 mysql

大家好,我遇到了一个从未遇到过的有趣问题,但这似乎经常出现在这里,但没有一个与我的情况完全一样。

我在 MySQL 中有一个表,其中保存从 .csv 导入的供应商数据

然后我通过供应商代码匹配产品。

但是,在执行此操作时,即使我可以在表中看到预期结果,我也没有收到匹配项。

这是我的查询:

SELECT  `dealer` ,  `qty` 
FROM  `supplier_import_all` 
WHERE  `supplier_id` =  '13'
AND  `supplier_code` =  'DIGITAL979'
LIMIT 0 , 30

以及 MySQL 结果消息:

MySQL returned an empty result set (i.e. zero rows). ( Query took 0.0027 sec )

这是不对的,我可以在 PHPMyAdmin 的表中看到该条目:

enter image description here

任何关于这个问题的想法都将非常感激,因为我很困惑。

<小时/>

在插入数据库之前添加了以下内容,似乎已经解决了问题:

$supplier_code = str_replace(' ', '', $supplier_code);
$supplier_code = preg_replace('/[^A-Za-z0-9\-]/', '', $supplier_code);

仍然有兴趣知道为什么修剪不起作用,因为我确信它一定只是数据周围某处的白色间距,这已经被其他人在这里重申了。

最佳答案

如果您的节目创建表格将会有所帮助。

该列中似乎有错误或多余的数据。

试试这个

选择经销商,数量 来自供应商_进口_全部 WHERE 修剪(supplier_id) = '13' AND 修剪(供应商代码)= 'DIGITAL979' 限制 0 , 30

如果这不起作用,请尝试这个 选择经销商,数量 来自供应商_进口_全部 WHERE 修剪(supplier_id) = '13' 限制 0 , 30

如果有效的话试试这个

选择经销商,数量 来自供应商_进口_全部 WHERE 修剪(供应商代码)= 'DIGITAL979' 限制 0 , 30

这将帮助您识别哪一列包含错误数据。 通常,当您从文件导入数据时,会添加额外的空格/字符。

已编辑 因为我们现在知道了 sulier_code 列的问题。尝试修复该列中的数据。 尝试这个 ` 更新供应商进口全部 设置供应商代码=修剪(供应商代码);

更新供应商进口全部 设置供应商代码=修剪(来自供应商代码的“\t”);

更新供应商进口全部 设置供应商代码=修剪(来自供应商代码的“\n”); `

关于MySQL 结果是 0,尽管我可以在表中看到它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26600714/

相关文章:

php - 使用 2 个表 PhP 的管理员用户登录

mysql - 为什么 MySQL 得不到正确的数据?

php - 为什么html页面读不到php页面

php - 将 PHP 放在 SELECT 语句中

mysql - Play框架-在mySql中上传文件

mysql - 查找表中重复次数最多的特定列的值

python - Django MySql,外键查询

php - MySql/PHP SUM 2 表 1 查询

mysql - MySQL中的特殊字符排序

python - 使用 Python 将 JSON 插入 MySQL