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' )

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...