sql关联查询去除重复项

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql关联查询去除重复项相关的知识,希望对你有一定的参考价值。

select * from JXSZCB,PPB,CXB,KSB,JXSJGB where PPB.PPBH=CXB.PPBH and CXB.CXBH=KSB.CXBH and KSB.KSBH=JXSJGB.KSBH and JXSJGB.YHBH=JXSZCB.YHBH and JXSJGB.YHBH='20080717170953888' and KSB.KSBH=KSB.KSBH order by KSB.KSBH desc
五张表关联查询,结果有重复数据,在form 前加distinct,出现错误是不能以 DISTINCT 方式选择 text、ntext 或 image 数据类型。

实在想不出来有什么办法了,请教一下各位,先谢谢了。
我是在sql2000里查询的,我这五张表中其中JXSZCB和JXSJGB里面各有一字段是text,那样转换后,我得到的只是一个字段啊,我要得到每张表的多有字段呢。不知道该怎么写。
select DISTINCT CAST(GSJJ AS VARCHAR), CAST(KSJJ AS VARCHAR) from JXSZCB,PPB,CXB,KSB,JXSJGB where PPB.PPBH=CXB.PPBH and CXB.CXBH=KSB.CXBH and KSB.KSBH=JXSJGB.KSBH and JXSJGB.YHBH=JXSZCB.YHBH and JXSJGB.YHBH='20080717170953888'
这是新写的查询语句,结果只有两个字段啊。

参考技术A MSSQL里面不能以 DISTINCT 方式选择 text、ntext 或 image 数据类型的。
但是你又要消除重复,那么对策是首先找到你的text、ntext 字段,(你的字段没image这个类型吧),然后查询字段用COVERT一下就OK了。
比如我的test表的name字段是text类型,那么查询
select DISTINCT name from test 将报错,可以这样
select DISTINCT convert(varchar(8000),name) from test
你的也可以用类似的处理方法。
参考技术B 真不知道为什么都喜欢用text格式数据存储量也不是很大啊 参考技术C 在前面加个 distinc就是去重

Hive SQL 表中去重复

比如,表A中有user_id和shop_id两个字段,现要求去除表A中user_id和shop_id两个字段都相同的记录,只保留一个,sorry 没有分了,xiexie了【可怜】!!!

参考技术A 抱歉,来晚了。SELECT user_id, shop_id FROM goods GROUP BY user_id, shop_id;

以上是关于sql关联查询去除重复项的主要内容,如果未能解决你的问题,请参考以下文章

springboot JPA 一对多关联查询 ,动态复杂查询 去除重复数据 in语句使用

5.mybatis一对一表关联查询

sql 多表关联查询

Hive SQL 表中去重复

SQL查询,如何去除重复的记录?

sql server怎么把多个查询结果关联起来