我有一个表,该表具有从mysql查询生成的几列。使用concat的“ first_name”和“ last_name”合并为“ username”列。所有列都可以单独过滤。
所以我想知道在查询中选择concat值后是否可以对其进行过滤。像...
if ($pictureExist == 0) {
$filename = "uploads/profile".$id."*";
$fileinfo = glob($filename);
$fileext = explode(".", $fileinfo[0]);
$fileactualext = $fileext[1];
echo "<div class=userPicture><img src='uploads/profile".$id.".".$fileactualext."?".mt_rand()."'></div>";
}
我知道我可以做类似的事情。
->selectRaw('CONCAT(first_name, " ", last_name) AS username')
->where('username', 'LIKE', '%search_username%')
但是我完成了一个循环,遍历所有搜索列,并区分了列名或 concat 值。
->where(DB::raw("CONCAT(first_name, " ", last_name) LIKE '%search_username%")