2016-09-16 55 views
0

我使用CONCAT多个列组合在一起,合并和单独的查询数据

SELECT CONCAT(col1, ' - ', col2) AS result 
FROM table 
WHERE col1 LIKE '%apple%' OR 
     col2 LIKE '%apple%' 
ORDER BY col1 ASC 

然后返回它的JSON数据。

while ($row = mysql_fetch_array($query)) { 
    $data[] = $row['result']; 
} 
echo json_encode($data); 

问题: 我怎样才能将数据分成了各个领域,当我在jQuery的看了吗? 单独发送它会更好(更高效)吗?

<script> 
    $(function() { 
    $("#AllWord").autocomplete({ 
     source: 'search_apple.php' 
    }); 
    }); 
</script> 
+0

你为什么要concat的2列,如果你想单独的值? – Neat

+0

它用于自动完成表单。立即显示两个字段。然后将它分开用于其他目的。我也可以做其他的事情。 – askseekknock

回答

0

最好将单独发送它,以便查询不带concat。

编码:

while ($row = mysql_fetch_array($query)) { 
    $data[] = $query; // No need to create another array, it is already correct 
} 
echo json_encode($data); 

,您仍然可以CONCAT(最佳地点是在查询本身),旁边col1和col2上个别如果你需要Concat的。

最后的评论:
请不要使用mysql_ *函数。
请使用mysqli_ *或PDO。
更多的信息在这里:Why shouldn't I use mysql_* functions in PHP?

+0

如何在自动填充功能中将其分开? – askseekknock

+0

如果我另行发送,我如何获得自动填充功能中的两个字段? – askseekknock