Mysql 为什么我在使用=时找不到数据,但在使用时,我喜欢它

Mysql 为什么我在使用=时找不到数据,但在使用时,我喜欢它,mysql,sql,Mysql,Sql,我有一个表a和一个列名称nama_dir数据类型varchar50。 我想找到这个2134882 所以我提出一个问题 select * from table A where nama_dir = '2134882' ,我没有得到任何结果。 但是当我将=改为喜欢并添加“%2134882%”时,我得到了数据,有人能解释为什么会发生这种情况吗?数据的前端和后端没有间距。为什么我在使用like但no= 请帮帮我 可能有一些空间,你能试着修剪一下吗 也许MySQL将您的值视为整数,请尝试删除引号 sel

我有一个表a和一个列名称nama_dir数据类型varchar50。 我想找到这个2134882 所以我提出一个问题

select * from table A where nama_dir = '2134882'
,我没有得到任何结果。 但是当我将=改为喜欢并添加“%2134882%”时,我得到了数据,有人能解释为什么会发生这种情况吗?数据的前端和后端没有间距。为什么我在使用like但no=

请帮帮我


可能有一些空间,你能试着修剪一下吗


也许MySQL将您的值视为整数,请尝试删除引号

select * from A where name_dir = 2134882

您可以将工作目录名称更改为nama目录:

若您使用=运算符,那个么它将在表中查找特定值。这意味着在您的2134882表中,该目录不可用,数据无法显示

如果您使用LIKE运算符,则在2134882此数据中可以找到该值

LIKE运算符在WHERE子句中用于搜索列中的指定模式

有两个通配符与LIKE运算符一起使用:

%-百分号表示零个、一个或多个字符

_-下划线表示单个字符

like运算符:其中CustomerName类似于“%or%”


描述:查找具有或位于任何位置的任何值

从代码中删除“表”。正确的代码是:

SELECT * FROM A WHERE name_dir = '2134882'

你能给我们你的两张照片吗?请粘贴正在获取数据的查询。也请尝试以下操作:选择*,lenname_dir作为表A中的FieldLength,其中name_dir类似于“%2134882%”-与预期长度进行比较查看我的答案hop这很有帮助。您能告诉Descripte ATry SELECT lengthname_dir的输出吗?从tableA中name_dir类似于“%2134882%”,以查看您是否有隐藏字符,您可以尝试使用哪种语言@爵士乐
select * from table A where nama_dir = '2134882'
SELECT * FROM A WHERE name_dir = '2134882'