2016-09-16 102 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