我已经得到了我的联合语句工作的方式,我想它,但我似乎不能让它订购2个表没有错误。
$query = mysql_query("SELECT userid_2 FROM messages
WHERE userid_1='$dbid' UNION SELECT userid_1 FROM messages WHERE userid_2='$dbid'");
,我试图将ORDER BY date
纳入其中,但它似乎不起作用
你试过了吗:
$query = mysql_query("
SELECT * FROM (
SELECT userid_2,date FROM messages
WHERE userid_1='$dbid'
UNION
SELECT userid_1, date
FROM messages
WHERE userid_2='$dbid'
) as table1
ORDER by table1.date");
编辑:
根据你下面的评论,我将这样做:
SELECT * FROM (
SELECT userid_1,userid_2 FROM messages
WHERE userid_1='$dbid'
ORDER BY date ASC) as table1
UNION
SELECT * FROM (
SELECT userid_1,userid_2
FROM messages
WHERE userid_2='$dbid'
ORDER BY date ASC) as table2
这与您的问题没有多大关系,但您不应该再使用mysql php扩展了。计划折旧(参见http://marc.info/?l=php-internals&m=131031747409271&w=2),您应该考虑切换到mysqli或PDO。