精易论坛

标题: mysql多表多字段cha询求助 [打印本页]

作者: damixifan0634    时间: 2024-12-30 10:01
标题: mysql多表多字段cha询求助
有A,B两表,表的字段一样,如何同时模糊cha询A,B两表的C,D字段?求各位大神解惑

作者: 1752328925    时间: 2024-12-30 10:16
你是要连表还是怎么的?
作者: 1752328925    时间: 2024-12-30 10:17
table1 inner join table2
作者: damixifan0634    时间: 2024-12-30 10:31
自己研究出来了,方法有点笨,但好在能用

select * from A where concat(C,_D) like '%cha询内容%' union all select * from B where concat(C,D) like '%cha询内容%'

补充内容 (2024-12-30 10:34):
上面那个多了一个_
select * from A where concat(C,D) like '%cha询内容%' union all select * from B where concat(C,D) like '%cha询内容%'
作者: 1752328925    时间: 2024-12-30 10:56
damixifan0634 发表于 2024-12-30 10:31
自己研究出来了,方法有点笨,但好在能用

select * from A where concat(C,_D) like '%cha询内容%' union  ...

select * from (select * from A union all select * from B )  where concat(C,D) like '%cha询内容%'


作者: zhou425    时间: 2024-12-30 13:57
SELECT C, D
FROM A
WHERE C LIKE '%内容%' OR D LIKE '%内容%'
UNION ALL
SELECT C, D
FROM B
WHERE C LIKE '%内容%' OR D LIKE '%内容%';
作者: 2622113    时间: 2024-12-30 19:29
SELECT * FROM (SELECT * FROM A UNION ALL SELECT * FROM B) AS combined_tables WHERE CONCAT(IFNULL(C, ''), IFNULL(D, '')) LIKE '%cha询内容%';

[size=16.002px]如果C、D字段中有NULL值就用

[size=16.002px]SELECT * FROM (SELECT * FROM A UNION ALL SELECT * FROM B) WHERE CONCAT(IFNULL(C, ''), IFNULL(D, '')) LIKE '%cha询内容%';




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4