我如何解决这个问题?用php还是mysql?
我有一个问题是我如何解决这个问题?用php还是mysql?,mysql,Mysql,我有一个问题是 SELECT m.msgFrom, m.msgTo, m.msgID, m.subject, m.dateTime, a.username FROM mailbox m JOIN accounts a ON (m.msgFrom = a.id) WHERE msgTo = $user OR msgFrom = $user AND parentID = 0 ORDER BY dateTime DESC LIMIT 250 是否可以
SELECT m.msgFrom, m.msgTo, m.msgID, m.subject, m.dateTime, a.username
FROM mailbox m
JOIN accounts a ON (m.msgFrom = a.id)
WHERE msgTo = $user
OR msgFrom = $user
AND parentID = 0
ORDER BY dateTime DESC
LIMIT 250
是否可以更改此查询,以便根据msgTo
或msgFrom
的值更改上的
我有一个用户变量。如果用户变量等于msgTo
获取username
,其中id
等于msgFrom
。如果用户变量等于msgFrom
获取username
,其中id
等于msgTo
我希望我解释得足够好?您应该能够在ON
子句中使用IF
语句。这将与对方用户的帐户合并。(即,如果消息来自$user
,则用户名
将用于接收用户,如果消息来自$user
,则用户名
将用于发送用户。)
if与php中的三元语法相同吗?虽然语法不同,但子句的顺序是相同的。也就是说,首先是条件,然后是值(如果为真),最后是值(如果为假)。第一次工作非常棒。我想你错过了一个最后的妄想症我应该投反对票,是吗?不过我不会的,我不是驴子
SELECT m.msgFrom, m.msgTo, m.msgID, m.subject, m.dateTime, a.username
FROM mailbox m JOIN accounts a ON a.id=IF(msgTo=$user, msgFrom, msgTo)
WHERE msgTo = $user OR msgFrom = $user AND parentID = 0
ORDER BY dateTime DESC LIMIT 250