从内部联接模糊列名称中检索列数据

时间:2012-09-24 01:50:31

标签: php mysql join

我有这个代码,它使用以编程方式生成的查询对11个表的连接执行大约30-40列的搜索,因此自然代理键可以显示几次。 然后搜索结果按tbl_sub_model.sub_model_sk进行分组,以防止在最终搜索结果屏幕中出现双重上升,并且我可以从相关表中检索数据(大多数是一对多)。

这里的代码应该循环遍历分组结果,检索与该子模型相关联的任何徽章字段,将徽章连接成一个字符串,并在make和model之后回显它们,如“subaru forrester xs ltd” 我得到了make和model,但是在A点没有其他东西,在B点没有任何东西。我怀疑它与我指的是“tbl_sub_model.sub_model_sk”而不是例如“model_name”这一事实有关。任何帮助将不胜感激。

while ($row = mysql_fetch_array($result)) {
            $badge_result_list = mysql_query("select badge from tbl_badge where sub_model_sk = {$row['tbl_sub_model.sub_model_sk']}");
            $badge_str='';
            while ($badge_result = mysql_fetch_array($badge_result_list)) {
                $badge_str.=$badge_result;
            }
            echo $row['tbl_sub_model.sub_model_sk'];  //<<<<<point B
            echo "<div class=\"top\" rel=\"{$div_count_id}\">{$row['manufacturer_name']} {$row['model_name']} {$badge_str}</div>";  //<<<<<point A
            echo "<div class=\"mid\" id=\"mid{$div_count_id}\" style=\"display: none;\">";
            echo $row['tbl_sub_model.sub_model_sk'];
            echo "</div>";

            $div_count_id++;
        }

1 个答案:

答案 0 :(得分:0)

使用print_r($ row);要查看查询中可用的行,您就知道使用哪个键来获取所需的信息。