sql查询,可以存在LIKE和==运算符吗?

时间:2014-05-01 07:32:22

标签: sql database

我有查询但不起作用 感谢。

query =  name=='Name' OR lstName== 'Lname' OR mddName == 'Mname' 
OR (name LIKE 'Name%' OR lstName LIKE 'Lname%' OR mddName LIKE'Mname%')

可以混合使用这些运算符吗?

感谢

2 个答案:

答案 0 :(得分:3)

SQL中没有==运算符。 SQL中的等式测试只是=

name ='Name' OR lstName = 'Lname' OR mddName = 'Mname' 
OR (name LIKE 'Name%' OR lstName LIKE 'Lname%' OR mddName LIKE 'Mname%')

此外,您应该注意%通配符可能代表一个空字符串,因此您的相等检查是多余的,只需使用您的like条件即可:

name LIKE 'Name%' OR lstName LIKE 'Lname%' OR mddName LIKE 'Mname%'

答案 1 :(得分:2)

如果您在使用LIKE通配符时已经在进行%次查询,那么当您执行LIKE时,第二部分已经涵盖了查询的第一部分。你可以这样做:

query = name LIKE 'Name%' OR lstName LIKE 'Lname%' OR mddName LIKE'Mname%'

此外,SQL中没有==运算符。它只是=,但您不需要它,因为上面的查询将为您提供所需的输出。