A表有10列B表有20列
A表和B表全都有1,2,3列但是数据内容可能不同。
现在要查询A\B两表 如果A表和B表的1列相同则取这条记录,如果1列不同则判断2列取2列相同的数据,如果1列和2列都不同3列相同则取3列。如果1,2,3都不同则不要取。
A表和B表全都有1,2,3列但是数据内容可能不同。
现在要查询A\B两表 如果A表和B表的1列相同则取这条记录,如果1列不同则判断2列取2列相同的数据,如果1列和2列都不同3列相同则取3列。如果1,2,3都不同则不要取。
解决方案 »
- 请教如何将64位的SQL Server迁移到32位系统上???多谢!!!
- 不同的记录数量合并,相同的记录数量取其一 SQL语句怎么写
- 请问如何利用sql server自动发邮件!急~~~!!!
- csdn有人会吗,在线急等 100 谢谢
- 有一个存储过程,我想调用它返回的表,怎么出错
- 请教如何取得SQL的jar包?在线等
- 任意给一个日期,如何知道这个日期所在的月份最大天数是几多?
- 怎么取出没有这种的记录
- 一个Excel文件包括三张表,怎么导到数据库中?
- 我要在VC中使用动态SQL,请问我应该怎样在VC中设置环境?高分求教(100)?
- sqlserver2000的一个表里,有一条数据记录就是更新和删除不了,其它的就行
- access工作7小时后 无法再打开其它表了
select * from a t1
inner join b t2 on t1.col1=t2.col2 or t1.col2=t2.col2 or t1.col3=t2.col3
from a
inner join b on a.col1=b.col1 and a.col2=b.col2 and a.col3=b.col3
a.*,
[value] =
CASE
WHEN a.[1] = b.[1] THEN '取1'
WHEN a.[2] = b.[2] THEN '取2'
WHEN a.[3] = b.[3] THEN '取3'
END
FROM A表 a
INNER JOIN B表 b
ON a.[1] = b.[1] OR
a.[2] = b.[2] OR
a.[3] = b.[3]
select *
from a t1
inner join b t2 on t1.col1=t2.col1 or
(t1.col1<>t2.col1 AND t1.col2=t2.col2) or
(t1.col1<>t2.col1 AND t1.col2<>t2.col2 AND t1.col3=t2.col3)