【发布时间】:2014-02-24 13:50:42
【问题描述】:
关于从 2 个不同的表中获取信息,我有一个棘手的问题(对我来说很好)。
我有一个数组,像这样:
$abc=$_COOKIE['cookie'];
$comma_separated = implode(",", $abc);
现在,该数组将是一个 CSV 列表,其中包含需要与“特价商品”表中的 ID 匹配的 ID。在“特价商品”表中有一个名为合同名称的列。此 Contract Name 列需要匹配 Products 表中的同名列,每个列都是唯一的,并显示其中包含的信息。
我当前的 MySQL 查询如下所示:
$query= "SELECT specials.id,
specials.product_name,
specials.contract_name,
specials.included_value AS inc_val,
specials.image_url,
specials.contract_monthly,
specials.outlet,
products.package,
products.bundled,
products.included_value
FROM specials,
product
WHERE `id` IN ('.$comma_separated.')
AND specials.contract_name = `products.package`";
发生的事情是……什么都没有发生。我已经尝试过思考一些 JOIN 教程,但没有运气。
所以基本上我想显示当前特价商品的列表,以及包含在不同表格中的包裹信息。我已经尝试过思考一些 JOIN 教程,但没有运气。
据我所知,我不擅长正确解释事情,所以如果我能进一步阐明这个难题,请大声疾呼。
谢谢! :)
【问题讨论】:
-
不应该是 `products
.package` 或者(更好的)products.package。并尝试添加这一行... echo $query; -
product 在
FROM specials, product中缺少“s” -
另外,我很失望那些 JOIN 教程都没有提到包含“JOIN”这个词:-(
-
假设这不是 php 问题,请尝试发布 php 输出的查询以及您的数据库架构,以便我们可以构建一个有效的 sqlfiddle 供您和我们测试。