我在搜索concat值时遇到问题,
有什么方法可以使用“mysql查询”或“php算法”吗?
我的想法是,我有四列结合(连接)作为ID字段和NAME字段
使用这两个字段,实际上我有一个输入文本用于搜索这两个字段(ID和NAME)
我有这样的查询,但这不起作用(因为这一行: id像'%$ search%')
select
concat(
id_1, '.',
id_2, '.',
id_3, '.',
id_4
)
as id,
name
from
employee
where
id like '%$search%'
or name like '%$search%'
答案 0 :(得分:2)
“id”尚未准备好
所以使用派生表:
select
id, name
FROM
(
select
concat(
id_1, '.',
id_2, '.',
id_3, '.',
id_4
)
as id,
name
from
employee
) as intermediate
where
id like '%$search%'
or name like '%$search%'
或重复表达
select
concat(
id_1, '.',
id_2, '.',
id_3, '.',
id_4
)
as id,
name
from
employee
where
concat(
id_1, '.',
id_2, '.',
id_3, '.',
id_4
) like '%$search%'
or name like '%$search%'