如何在与 AS 合并的列中使用 LIKE 进行搜索

How to search with LIKE in columns merged with AS

我用 AS 合并了两列,现在我想用 LIKE 搜索其中的数据。我怎样才能做到这一点?这是我到目前为止所做的尝试。

Php :

$sql = "SELECT CONCAT (name , ' ' , surname) AS full  FROM person ";
$query = mysqli_query($con,$sql);
if($query){
    while($row=mysqli_fetch_assoc($query)){
        echo "<p>$row[full]</p>";
    }
}else{
    echo mysqli_error($con);
}

使用子查询。

子查询"SELECT CONCAT (name , ' ' , surname) AS full FROM person "

完成查询:

SELECT * from (SELECT CONCAT (name , ' ' , surname) AS full  FROM person) where 
full like '%a%';

希望对您有所帮助。

你也可以试试

SELECT * 
FROM pages 
WHERE CONCAT_WS('', column1, column2, column3) LIKE '%keyword%'

我认为您可以这样尝试 - 使用 having 子句而不是 where

select concat( field1, field2 ) as 'alias'
from `table`
having `alias` like '%word%'

或者,在您的情况下:

SELECT CONCAT (`name` , ' ' , `surname`) AS 'full'  FROM `person`
having `full` like '%word%';