MySQL中的LIKE关键字模糊查询条件拼接

  SQL中的LIKE关键字可以实现模糊搜索,一搬在where语句后面作为条件查询:

SELECT * FROM tablename t WHERE t.name LIKE '%M%';

  查询条件也可以动态拼接,比如拼接子查询的结果作为LIKE关键字的查询条件,如下SQL,根据用户部门查询所有的同级部门:

SELECT
    so.id
FROM
    sys_office so
WHERE
    so.parent_ids LIKE concat(
        '%',
        (
            SELECT
                su.company_id
            FROM
                sys_user su
            WHERE
                su2.id = '1395574301186166785'
        ),
        '%'
    )
AND so.del_flag = 0

  字符串的拼接,主要用了concat()函数,简单记录一下。

 

上一篇:MySQL必知必会-8、用通配符进行过滤


下一篇:MySQL高级--索引失效