php – MySQL Query从数据库中选择一个值等于两个不同事物之一的记录

我必须从MySQL DB获取记录,其中:

sentto = "$username"

要么

sentto = "everyone"

我如何将它放在MySQL查询中?我尝试了一些东西,但它们似乎没有起作用:

mysql_query("SELECT * 
             FROM pmessages 
             WHERE status='unread' 
                 AND sentto='$username' || sentto='everyone'");

mysql_query("SELECT * 
             FROM pmessages 
             WHERE status='unread' 
             AND sentto='$username' 
                 AND sentto='everyone'");

我似乎很难过,如果有人知道如何以正确的方式做到这一点请告诉我.对我来说这是一个新的场景.谢谢!

最佳答案
SELECT * 
FROM pmmessages 
WHERE sentto = '$username' 
    OR sentto = 'everyone'

根据您的新查询编辑Chris:

SELECT * 
FROM pmessages 
WHERE status='unread' 
    AND sentto='$username' 
OR sentto='everyone' 

你需要修改它,以便你的AND独立(它与你的OR相冲突).

把它改写成这个

SELECT * 
FROM pmessages 
WHERE status='unread' 
    AND 
        (sentto='$username' 
            OR sentto='everyone' )

转载注明原文:php – MySQL Query从数据库中选择一个值等于两个不同事物之一的记录 - 代码日志