Param 1 Param 2 Param 3 Param 4 Param 5 Param 6 #### VIEW_ID VIEW_NAME PARAM_ID PARAM_NAME ---------------------------------------------- 123456 all 123 Param 1 123456 all 124 Param 2 123457 detail 125 Param 3 123457 detail 126 Param 4 123457 detail 127 Param 5 123457 detail 128 Param 6 #### $xml = "\n"; while ($row = $sth->fetchrow_arrayref){ if (!defined($id{$row->[0]})){ $xml .= $xml . "[0]\" name=\"".$row->[1]."\">\n"; $id{$row->[0]} = $row->[0]; if (!defined($param{$row->[3]})){ $xml .= $xml . "[3]\">".$row->[4]."\n"; $id{$row->[3]} = $row->[3]; } }elsif(defined($id{$row->[0]})){ if (!defined($param{$row->[3]})){ $xml .= $xml . "[3]\">".$row->[4]."\n"; } } }