如何编写从两个搜索值返回匹配项的sql查询
我正在尝试创建一个搜索功能,在该功能中,用户可以组合两个值来搜索联系人列表中的某个人。 我希望数据库返回两个值都匹配的帖子 目前,我已尝试这样做:如何编写从两个搜索值返回匹配项的sql查询,sql,sqlite,jdbc,Sql,Sqlite,Jdbc,我正在尝试创建一个搜索功能,在该功能中,用户可以组合两个值来搜索联系人列表中的某个人。 我希望数据库返回两个值都匹配的帖子 目前,我已尝试这样做: input=searchValueA,searchValueB SELECT * FROM ContactsList WHERE lastName LIKE '%searchValueA%' OR firstName LIKE '%searchValueA%' OR company LIKE '%searchValueA%' OR phoneNumb
input=searchValueA,searchValueB
SELECT * FROM ContactsList WHERE lastName LIKE '%searchValueA%' OR firstName LIKE '%searchValueA%' OR company LIKE '%searchValueA%' OR phoneNumber LIKE '%searchValueA%' AND lastName LIKE '%searchValueB%' OR firstName LIKE '%searchValueB%' OR company LIKE '%searchValueB%' OR phoneNumber LIKE '%searchValueB%';
但这会返回与搜索值和两者都匹配的帖子。我只想得到两个搜索值都匹配的帖子。
我可以重新定义查询以使其执行我想要的操作吗
sql初学者致以最崇高的敬意我认为您希望在这种情况下使用括号:
WHERE (lastName LIKE '%searchValueA%' OR
firstName LIKE '%searchValueA%' OR
company LIKE '%searchValueA%' OR
phoneNumber LIKE '%searchValueA%'
) AND
(lastName LIKE '%searchValueB%' OR
firstName LIKE '%searchValueB%' OR
company LIKE '%searchValueB%' OR
phoneNumber LIKE '%searchValueB%'
);