我 在 表 A 和 表 B 之间 有 一 个 左 连接 , 它 满足 下面 给定 条件 。
" 左 " 表 A :
| 姓名|城市|乡村|
| - -| - -| - -|
| 鲍勃|不 适用|不 适用|
| 汤姆|纽约 州|美国|
" 右 " 表 B
| 姓名|旗帜|地点|
| - -| - -| - -|
| 鲍勃|不 适用|不 适用|
| 汤姆|所在 城市|纽约 州|
| 汤姆|国家/地区|美国|
当前 结果 :
| 姓名|旗帜|地点|
| - -| - -| - -|
| 鲍勃|不 适用|不 适用|
| 汤姆|所在 城市|纽约 州|
| 汤姆|国家/地区|美国|
预期 结果 :
| 姓名|旗帜|地点|
| - -| - -| - -|
| 鲍勃|不 适用|不 适用|
| 汤姆|所在 城市|纽约 州|
x1月 1 日OR (B.FLAG=CITY AND B.SITE=A.CITY AND A.NAME= B.NAME)
个OR (B.FLAG=COUNTRY AND B SITE=A.COUNTRY AND A.NAME=B.NAME)
如果 不是 第 1 种 , 则 为 第 2 种 , 否则 为 第 3 种 条件
我 想 优先 考虑 这 三 个 条件 , 即 当 满足 第 一 个 条件 时 , 不 应 考虑 其余 两 个 条件 。
如果 满足 第 二 个 连接 条件 , 则 即使 可能 , 也 不 应 按照 第 二 个 条件 再次 连接 。
只 应 使用 三 个 联接 条件 中 的 一 个 。
我 得到 了 双 行 , 因为 一些 行 同时 满足 第 二 个 和 第 三 个 条件 , 这 是 不 正确 的 , 根据 我 的 要求 。
我 应该 在 这里 添加 什么 ? 我 如何 才能 获得 所 需 的 优先 级 ?
2条答案
按热度按时间uqxowvwt1#
试试看:
| 名称|旗标|站点|
| - -|- -|- -|
| 鲍勃|不适用|不适用|
| 汤姆|所在城市|纽约|
iqih9akk2#
使用括号来分隔不同的条件。否则,您可能会得到错误的结果。请尝试此操作。