SQL 同时对多个表进行模糊查询并自定义顺序

    xiaoxiao2021-03-25  148

    使用场景

    类似qq主面板的搜索框,可以输入数字,字母(汉字首拼),中文进行模糊搜索,可以搜到的结果有:qq号,昵称,群号,群名称等等。而这些内容可能存放在不同的表中,则需要对多个表的多个内容同时进行搜索:( 搜索的字段3个表中必须相同)

    SQL语句

    SELECT * FROM ( SELECT FLAG, SID, ID, NAME, MOBILEPHONE, 1 AS userType FROM TAB_1 UNION SELECT FLAG, SID, ID, NAME, MOBILEPHONE, 2 AS userType FROM TAB_2 UNION SELECT FLAG, SID, ID, NAME, MOBILEPHONE, 3 AS userType FROM TAB_3 ) d WHERE ( d.NAME LIKE '%搜索内容%' OR d.MOBILEPHONE LIKE '%搜索内容%' OR d.ID LIKE '%搜索内容%' OR d.SID LIKE '%搜索内容%' ) AND d.FLAG != 3 ORDER BY userType ASC
    转载请注明原文地址: https://ju.6miu.com/read-9800.html

    最新回复(0)