【发布时间】:2018-01-26 14:28:13
【问题描述】:
我有一个查询要使用 searchString 对连接的名字和姓氏进行搜索。这是我的代码:
$query = " SELECT user_id, firstname, lastname, picUrl
FROM user
WHERE CONCAT(firstname, ' ', lastname) LIKE '%" . $searchString . "%'
ORDER BY CASE WHEN CONCAT(firstname, ' ', lastname) = '" . $searchString . "' THEN 0
WHEN CONCAT(firstname, ' ', lastname) = '" . $searchString . "%' THEN 1
WHEN CONCAT(firstname, ' ', lastname) = '%" . $searchString . "%' THEN 2
WHEN CONCAT(firstname, ' ', lastname) = '%" . $searchString . "' THEN 3
ELSE 4
END, CONCAT(firstname, ' ', lastname) ASC";
有没有办法通过将“CONCAT(firstname, ' ', lastname)”存储为名为 full_name 的变量来使我的代码更简洁?
例子,
WHERE full_name LIKE ...
WHEN full_name = ...
【问题讨论】:
-
你想达到什么目的??你能分享你的查询的示例输出吗?
标签: php mysql variables search redundancy