Joomla 2.5加入3桌

时间:2015-07-16 10:16:21

标签: mysql join joomla

我正在尝试加入3个表并存储结果。 问题是我似乎无法处理它。谷歌搜索和搜索的时间没有任何结果。

以下是查询:

 $db = JFactory::getDBO();
        $item_kit = array();

    $q = "SELECT p.virtuemart_product_id,
              pr.product_price,
              pr.virtuemard_product_id,
              pb.group_id
       FROM #_virtuemart_products p
           INNER JOIN #_virtuemart_product_prices pr ON p.virtuemart_product_id = pr.virtuemart_product_id,
           INNER JOIN #_pb_group_vm_prod_xref pb ON pb.vm_product_id = pr.virtuemart_product_id";

    $db->setQuery($q);
    $item_kit = $db->loadObjectList();
    return $item_kit;

请注意我在所有表格中使用ID作为公共元素。 在发生所有这些废话后,它应该是这样的:

if(!empty($item_kit['group_id'])){
      echo 'It works';
}

调试导致在{INNER JOIN #_virtuemart_product_prices pr ON p.virtuemart_product_id = pr.virtu...'

附近发现SQL错误 你能帮帮我吗?或者,至少,指出我在做愚蠢错误的地方...... 我知道这是一件小而简单的事,但我看不出来......

2 个答案:

答案 0 :(得分:1)

发现问题了! pr.virtuemard_product_idpr.virtuemart_product_id 我不得不手动输入数据库表前缀。 我真傻。感谢大家抽出时间阅读这个问题。 问候, 维拉德

答案 1 :(得分:0)

删除第一个内部连接线末尾的逗号

INNER JOIN #_virtuemart_product_prices ... pr.virtuemart_product_id,

它应该成为

INNER JOIN #_virtuemart_product_prices ... pr.virtuemart_product_id