我需要通过他们所在的城市配对 2 个供应商名称。
<name supplier a> <name supplier b> <location>
我通过交叉连接一个供应商表获得了该表格 - 现在我需要确保它只有一个记录 - 所以要么在代码块顶部,要么:
<name supplier b> <name supplier a> <location>
例子:
Märzen AG | 迈尔幼儿园 | 乌尔姆
或者
迈尔幼儿园 | Märzen AG | 乌尔姆
因此:我只需要上述结果之一。目前,我从 Crossjoin 中获得了两条记录:
SELECT le.Liefname, le.liefstadt, li.Liefname
FROM Lieferanten le CROSS JOIN Lieferanten li
WHERE le.Liefstadt not like ''
AND li.Liefstadt not like ''
AND le.liefstadt=li.liefstadt;
其中liefstadt 是配对它们的城市,liefname 是我需要输出的名称。
我想做的另一种方法是:
SELECT a.LiefName, b.LiefName, LiefStadt
FROM Lieferanten a, Lieferanten b
WHERE a.LiefStadt = b.LiefStadt
AND a.LiefName <> b.LiefName;
这里的问题是结果中仍然存在重复项。
由于我不是母语人士,我希望我能说的足够让您理解我的问题。(因此可能错过了一个已经存在的对我有帮助的话题)。