MySQL:如何从两个字段进行搜索?
我有一个名为optima的表,其中有几个字段,我需要进行一个查询,返回结果,其中field1=MySQL:如何从两个字段进行搜索?,mysql,search,Mysql,Search,我有一个名为optima的表,其中有几个字段,我需要进行一个查询,返回结果,其中field1=a和field2=b 例如,表格 F1 F2 _____ a z v a a b b a 结果必须是: a b 我试图提出这样的疑问 SELECT * FROM `optima` WHERE `F1` LIKE 'a' AND `F2` LIKE 'b'; 但它不返回任何内容。要获得精确匹配,请使用=运算符,例如: select * from `optima` where `F1` =
a
和field2=b
例如,表格
F1 F2
_____
a z
v a
a b
b a
结果必须是:
a b
我试图提出这样的疑问
SELECT * FROM `optima` WHERE `F1` LIKE 'a' AND `F2` LIKE 'b';
但它不返回任何内容。要获得精确匹配,请使用
=
运算符,例如:
select *
from `optima`
where `F1` = 'a' and `F2` = 'b';
您需要认真学习SQL基础知识。F1和F2的列类型(和长度)是什么?反勾号或反引号有时是必要的,但您应该避免使用它们。表名不需要反勾号;列名可能需要反勾号的唯一原因是它们是大写的,并且在创建表时用反勾号括起来。是否有反勾号之类的内容?我认为在这种情况下,
LIKE
更准确,因为它逐字符进行比较,并考虑尾随空格。不过,=
可能会更好,因为尾随空格将被忽略,这可能是问题所在。如果我需要在带有a,bc
的表中搜索类似的内容:a,b%
,该怎么办?所以只需使用like
,而不是=
?@SergiiRechmp从optima
中选择*;