注册 | 登录   
当前位置:网站首页 > 资源显示

置顶推荐MsSqlUNION多表联合查询,多表联合搜索问题汇总

发布时间:2019/12/6 15:48:35 / 最后修改:2019-12-6 15:48:54 / 浏览:762
参考:https://blog.csdn.net/hstjbj/article/details/100775841

SELECT id,title,content FROM cpInfo where title like '%国六%' or content like '%国六%'
UNION all SELECT id,title,content FROM syspage where title like '%我们%' or content like '%公司%'

用 UNION all 两表结果叠加显示,没问题

但是如果用 去重方式 UNION 就提示 “能以 DISTINCT 方式选择 text、ntext 或 image 数据类型” 应该这种方式不能用于这几个数据类型字段,

如果非得去重,那只能 select distinct xxx  ( UNION 查询写这里面) 这种方式去重


==== 后记 ====

多表检索是可以,但是问题又来了,如何区分检索出来的信息属于那个表?

我能想到的办法,每个表加一个同样字段  bkey 标注下表类别
然后根据这个字段的类别来区分! 

不知道有没纯SQL 的办法能区分.....待定......


笨办法可行,但是真有SQL 办法:
参考:https://blog.csdn.net/qq_27517377/article/details/97272108


SELECT id,title,content,'cp' as table_name FROM cpInfo where title like '%国六%' or content like '%国六%'
UNION all SELECT id,title,content,'dy' as table_name FROM syspage where title like '%我们%' or content like '%公司%'


接续,排序问题!
参考:https://blog.csdn.net/lxw1844912514/article/details/100028651

------------------------------
SELECT a.id,a.title,a.content,a.table_name
FROM
(SELECT id,title,content,'cp' as table_name FROM cpInfo 
where title like '%国六%' or content like '%国六%'

UNION all 

SELECT id,title,content,'dy' as table_name FROM syspage 

where title like '%我们%' or content like '%公司%')

AS a  ORDER BY id DESC  

--------------------------

完整代码 (代码框可以往下拉高显示):
您尚未登录,暂时无法查阅资源!立即登录
插播广告区
您尚未登录,暂时无法发表评论。立即登录
暂无任何评论
广告区
CopyRight © 2017 www.kaifaku.cn All Rights Reserved - 版权所有 © 开发库 (所有资源来源于实战项目,拿来即用)
付费资源请联系 QQ:2633993818 / E-MAIL:2633993818@qq.com 本站免费分享资源不提供免费咨询