完全外部加入MySQL而不重复值

时间:2014-11-16 20:45:12

标签: mysql join

请在此处查看我的示例数据: http://sqlfiddle.com/#!2/12bda/3/0

结果不是我想要的。有没有办法显示结果表如下:

EMPLID  NAME    NAMETYPE    GENDER  VISA      Passport
10001   CAT     PRI         F       A         USA
10001   DOG     SEC         null    null      GBR
10001   FISH    LEG         null    null      null
10002   FOOD    PRI         F       V         USA
10002   null    null        null    A         null
10003   FOOD    PRI         M       C         null
10003   null    null        null    B         null
10004   FOOD    PRI         M       D         null

我查看了这篇文章的解决方案:full outer join in mysql

但是,我需要重复的值为null。有可能吗?

1 个答案:

答案 0 :(得分:0)

简单的答案是否定的。

答案很长,但你真的不应该这样做。

要强制MySQL在重复行上显示空值,您必须维护状态,并大大降低查询性能。

处理应用程序逻辑中的重复项要好得多,但是这里有一个sql fiddle来演示它是如何实现的。