求一复杂sql!

来源:百度知道 编辑:UC知道 时间:2024/05/06 14:38:32
A,B两个表主键一致 为'姓名',字段数A表多于B表,求一sql文,比较A,B两表的内容。B表没有的字段用'-'表示,
如果一致显示YES,否则NO,

姓名,数学,语文,住址 一致性
李 65 85 - no
李 65 86 北京 no
王 65 86 - yes
王 65 86 北京 yes

我想要得结果是第一条是A表的数据,第二条是b表的数据

SELECT A.姓名, A.数学, A.语文, ISNULL(B.住址, '-') 住址,
CASE WHEN B.姓名 IS NULL THEN 'no' ELSE 'yes' END 一致性
FROM A LEFT OUTER JOIN B ON
A.姓名 = B.姓名 AND A.数学 = B.数学 AND A.语文 = B.语文

二楼正解

我觉着两个表表较也太麻烦了,还不如直接把B的记录全INSERT到A中,再select