gpt4 book ai didi

mysql - 在 2 个字段中搜索全名

转载 作者:行者123 更新时间:2023-11-29 10:43:20 24 4
gpt4 key购买 nike

我有一个带有 firstNamelastName 字段的用户实体。如何以任意顺序搜索全名。例如搜索“John Doe”、“Doe John”、“John D”并获取相关结果

这是我当前的查询。但我一次只能搜索一列,即获得与“firstName”或“lastName”匹配的结果。例如,我得到“John”或“Doe”的结果,但没有得到“John Doe”的结果

  $likeName = $name.'%';
$qb = $this->createQueryBuilder('user')
->where($qb->expr()->orX(
$qb->expr()->like('user.firstName', "'$likeName'"),
$qb->expr()->like('user.lastName', "'$likeName'")
);

最佳答案

        $qb->where($qb->expr()->andX(
$qb->expr()->orX(
$qb->expr()->like(
$qb->expr()->concat('employee_alias.firstName', $qb->expr()->concat($qb->expr()->literal(' '), 'employee_alias.lastName')),
$qb->expr()->literal($phrase.'%')
),
$qb->expr()->like(
$qb->expr()->concat('employee_alias.lastName', $qb->expr()->concat($qb->expr()->literal(' '), 'employee_alias.firstName')),
$qb->expr()->literal($phrase.'%')
)
))
);

关于mysql - 在 2 个字段中搜索全名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45074188/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com