2013-11-25 77 views
-1

我在codeigniter中遇到UNION查询问题。它给出的输出,但名称是相同的数组中的两列。Codeigniter UNION查询问题

$sql = "SELECT firstname FROM user_profile WHERE user_id ='".$id."' 

UNION SELECT email FROM user WHERE id='".$id."'"; 

$data = $this->db->query($sql); 

print_r($data->result()); 

,这是输出:

Array 
(

    [0] => stdClass Object 
     (
      [firstname] => Dimpy 
     ) 

    [1] => stdClass Object 
     (
      [firstname] => [email protected] 
     ) 

) 
+0

请通过[PDO](http://php.net/pdo)或[PDO](http://php.net/pdo)学习如何使用[** prepared statements **](https://www.youtube.com/watch?v=nLinqtCfhKY)库MySQLi](http://php.net/mysqli)。 –

+0

Teresko,他使用codeigniter。开始将自己的MySQL驱动程序加入其中并不实际。 不过Dimple,你应该确定你使用的数据没有被浏览器解析。 – andershagbard

+0

当你需要分开的列使用连接而不是联合 –

回答

1
$sql = "SELECT t1.firstname,t2.email FROM user_profile as t1 join user as t2 on t1.id = t2.id where WHERE t2.id='".$id."'";