现在有表A、B、C、D,表A的字段a1是表B的主键。表A的字段a2的值可能为表C的主键值或表D的主键值,表A的字段a3是数字,如果为3,表示a2的值在表D中,如果为2,表示a2的值在表C中,如果为1,表示a2的值不在表D和表C中,如果为0,表示a2的值为空。要实现的效果:先查询表A,会返回1条记录。看它的a3值为多少,如果为3,则对表A、B、C实行连接查询,返回结果集,如果为2,则对表A、B、D实行连接查询,返回结果集,如果为1或0,则对表A、B实行连接查询,返回结果集。
调试欢乐多
a1 a2 a3
长沙 法院 3
空 高等院校 2
武汉 自定义内容 1
北京 空 0
空 空 0表B
b1 b2
空 空
长沙 湖南
武汉 湖北
北京 北京表C
c1 c2
法院 政府部门表D
d1 d2
高等院校 事业单位要求查询结果为:
长沙 法院 政府部门
空 高等院校 事业单位
武汉 自定义 空
北京 北京 空
空 空 空