Pea*_*Gen 0 sql sql-server jdbc
看看下面的SQL语句
select *
from PhoneData
where names = 'yohan'
and nickName = 'yoises'
and mobileNumber1 = 0000000000 or mobileNumber2 = 0000000000
Run Code Online (Sandbox Code Playgroud)
在这里,有一个问题.这就是返回电话号码相同的所有结果.有两行具有相同的电话号码,因此它通过忽略名称,昵称和所有来返回两者.我认为这是因为"或"声明.我怎么解决这个问题?我需要获取姓名= yohan和mobileNumber1或mobileNumber2 = 000000000的详细信息.
你的OR语句需要一些括号,如下所示:
select *
from PhoneData
where names = 'yohan'
and nickName = 'yoises'
and (mobileNumber1 = 0000000000
or mobileNumber2 = 0000000000)
Run Code Online (Sandbox Code Playgroud)
没有括号,它实际上是这样做的:
select *
from PhoneData
where (names = 'yohan'
and nickName = 'yoises'
and mobileNumber1 = 0000000000)
or mobileNumber2 = 0000000000
Run Code Online (Sandbox Code Playgroud)