进入单个查询

nik*_*iko 1 php mysql conditional-statements

我有一张桌子

 unam     fnam

 john     alex
 alex     john
Run Code Online (Sandbox Code Playgroud)

如果unam'john'== fnam'alex'或unam'alex'== fname'john',我想要一个返回true的查询

我不知道如何在一个查询中执行此操作.我的代码

$re = mysql_query("SELECT 1 FROM tab WHERE unam='john' and fnam='alex' LIMIT 1"); 
$ir = mysql_query("SELECT 1 FROM tab WHERE unam='alex' and fnam='john' LIMIT 1"); 

if ((!(mysql_num_rows($re))) && (!(mysql_num_rows($ir)))) echo 'not exists';
Run Code Online (Sandbox Code Playgroud)

我已经执行了2个单独的查询(一个用于unam 'john' == fnam 'alex'和其他unam 'alex' == fname 'john'查询,如果两个查询都没有任何行,则它不存在回声.

我想可能是它可以优化到单个查询.任何人都可以帮助我.谢谢

chr*_*don 5

您可以执行OR条件来检查多个不同的条件.

SELECT 1 
FROM tab 
WHERE (unam='john' and fnam='alex') 
    OR (fnam='john' and unam='alex') 
LIMIT 1
Run Code Online (Sandbox Code Playgroud)