我不完全确定如何提出这个问题,所以我将首先提供一个示例表和一个示例输出,然后对我正在尝试完成的内容进行更全面的解释。
想象一下,我有两张桌子。第一个是公司列表。其中一些公司由于从不同来源导入并不断更新而出现重复条目。例如,公司表可能如下所示:
| rawName | strippedName |
| Kohl's | kohls |
| kohls.com | kohls |
| kohls Corporation | kohls |
所以在这种情况下,我们有来自三个不同来源的信息。为了让我的程序了解这些来源中的每一个都是同一个商店,我创建了剥离的名称列(我也使用它来创建 URL 和诸如此类的东西)。
在第二个表中,我们有关于交易、优惠券、送货优惠等的信息。但是,由于这些信息来自不同的来源,因此最终得到了我们上面确定的三个不同的 rawName。例如,第二个表可能如下所示:
| merchantName | dealInformation |
| kohls.com | 10% off everything... |
| kohl's | Free shipping on... |
| kohls corporation | 1 Day Flash Sale! |
| kohls.com | Buy one get one... |
所以在这里我们有四个条目都来自同一家公司。但是,当网站上的用户访问 Kohls 的列表时,我希望它显示来自每个来源的所有条目。
这是我目前拥有的,但它似乎并没有起到作用。这似乎只有在我将该子查询中的 LIMIT 设置为 1 时才有效,以便它只带回一个 rawNames。我需要它来匹配所有的 rawNames。
SELECT * FROM table2
WHERE merchantName = (SELECT rawName FROM table1 WHERE strippedName = '".$strippedName."')