结合mysql查询结果

时间:2016-09-15 14:10:44

标签: php mysql

我正在搜索数据库表中两列中包含“un”的单词。 如何在输出$ data中获取两个行数据?

示例:

col1 | col2


tom -------- unfriendly

train ------- fast

unused--- cloth 

$query = mysql_query("SELECT * FROM table 
WHERE col1 LIKE '%un%' 
OR col2 LIKE '%un%' 
ORDER BY col1 ASC");
while ($row = mysql_fetch_array($query)) {
    $data[] = $row['col1'];
}

我从上面的代码中得到$ data = [tom,unused]。 我如何获得$ data = [tom-friendly,unused-cloth]?

2 个答案:

答案 0 :(得分:1)

正如@TimBegeleisen所说,您可以在SQL请求中使用CONCAT,但您也可以在PHP代码中连接字符串:

$query = mysql_query("SELECT * FROM table 
WHERE col1 LIKE '%un%' 
OR col2 LIKE '%un%' 
ORDER BY col1 ASC");
while ($row = mysql_fetch_array($query)) {
    $data[] = $row['col1'] . ' - ' . $data['col2'];
}

答案 1 :(得分:0)

尝试使用CONCAT

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

然后您将通过以下方式访问PHP代码中的结果集:

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