mysql 查询仅在将值与主键进行比较时才有效

Ces*_*pez 3 mysql select where

我正在处理这张表:

mysql> describe dispositivos;
+-----------+-------------+------+-----+---------+-------+
| Field     | Type        | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| sn        | varchar(25) | NO   | PRI | NULL    |       |
| device_id | varchar(25) | YES  |     | NULL    |       |
| ip_adress | varchar(25) | YES  |     | NULL    |       |
+-----------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

我注意到当我输入这样的查询时:

mysql> select * from dispositivos WHERE sn = "SAL1027TVGH";
+-------------+---------------+------------------+
| sn          | device_id     | ip_adress        |
+-------------+---------------+------------------+
| SAL1027TVGH |  CU_DGIE_6509 |  148.228.110.254 |
+-------------+---------------+------------------+
1 row in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

一切正常,但如果我按任何其他字段进行搜索,则查询不起作用。

mysql> select * from dispositivos WHERE ip_adress ="148.228.110.254";
Empty set (0.00 sec)

mysql> select * from dispositivos WHERE device_id ="CU_DGIE_6509";
Empty set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

你知道为什么会这样吗?

还有其他表,但问题只影响这个表,它会自动用 LOAD DATA LOCAL INFILE 填充。

谢谢。

mir*_*173 5

查看您的 select 语句的输出:您的值中似乎有一个前导空白。