php - 在 SQL select 语句中将多个列值合并为单个值

标签 php mysql

我有一个自动完成字段,用户可以在其中以相同的顺序输入姓氏名字中间名。

使用姓氏名字中间名(作为术语)我必须显示自动完成下拉列表。

在我的数据库中,我有 3 列用于名字姓氏和中间名。现在我必须将同一行的 3 列值(asc_lastname、asc_firstname、asc_middlename)与用户输入(术语)进行比较。

这是 SQL 查询。请纠正我的错误。

$rs = mysql_query( "select asc_lastname, asc_firstname, asc_middlename from issio_asc_workers INNER JOIN issio_workers_asc_sc_list 
ON  issio_asc_workers.lname_fname_dob=issio_workers_asc_sc_list.lname_fname_dob where issio_workers_asc_sc_list.center_id='$cid' 
AND issio_workers_asc_sc_list.center_user_type = '31' AND issio_workers_asc_sc_list.center_status <> 'deleted' AND 
(issio_asc_workers.asc_lastname+' '+issio_asc_workers.asc_firstname+' '+issio_asc_workers.asc_middlename) 
LIKE '". mysql_real_escape_string($term) ."%'  ORDER BY issio_asc_workers.lname_fname_dob ASC LIMIT 0,10");

是否可以使用像这样的 SQL 查询一次比较 3 个列值

 select * 
 from table 
 where (column1+''+column2+''column3) like 'this is good'

对不起,我的句子不好。

最佳答案

试试这个查询:

SELECT * FROM your_table WHERE CONCAT(column1, ' ', column2, ' ', column3) LIKE '%this is good%'

Documentation for CONCAT

关于php - 在 SQL select 语句中将多个列值合并为单个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11269655/

相关文章:

php - 如何自定义 Laravel 数组验证错误键和消息

php - 使用 PHP+MYSQL+JSON+FBGRAPH 为随机元素传递错误数据

php - 识别选中的复选框序列然后保存到 mysql 数据库

php - 如何使用php将excel中的数据导入到mysql数据库中

MySQL : Check condition on two rows

MySQL在单个查询中访问两个表

php - 存储餐厅签到计数等数据的最佳方式?

mysql - 合并mysql中的记录

php - PHP curl DELETE请求的写法

php - 将产品添加到 WooCommerce 单一产品的购物车后触发 JQuery 单击