如何通过PHP分离SQL联合的值

Alf*_* M. 0 php mysql sql union

我正在使用mysql_fetch_array()这个,并通过phpMyAdmin测试我的查询.并且,正如我认为它们都在同一行,是否可以使用mysql fetch array()

这是我的代码:

$sql="SELECT xml FROM g2s_api_logs WHERE functioncode='MQX' AND cardnumber= '$cardnumber' AND        
            direction='out' AND date(datetime)='$date' AND time(datetime)='$time' UNION SELECT xml FROM 
            g2s_api_logs WHERE functioncode='MQX' AND cardnumber= '$cardnumber' AND direction='in' AND 
            date(datetime)='$date' AND time(datetime)='$time' ";
            $query= mysql_query($sql)or die(mysql_error().$sql);
            $array=mysql_fetch_array($query,MYSQL_ASSOC);
            $result= htmlspecialchars($array['?']);
            $response=htmlspecialchars($array['?']);
            mysql_close();
Run Code Online (Sandbox Code Playgroud)

请忽略问号; 我不知道该怎么做.我使用phpMyAdmin运行这个,它工作.但是,我想在显示中分离他们的结果.即使它们在同一行,我能这样做吗?是否有fetch栏这样的东西?

mu *_*ort 5

如果您有这样的查询:

select * from X where ...
union
select * from Y where ...
Run Code Online (Sandbox Code Playgroud)

并且您想知道某个特定行是来自X还是Y,那么您可以向SELECT子句添加一个文字值来区分它们:

select 'X' as came_from, * from X where ...
union all
select 'Y' as came_from, * from Y where ...
Run Code Online (Sandbox Code Playgroud)

只要列名称/别名和类型匹配UNION就会对这种事情感到满意.