PHP Oracle запрос установить данные в правой позиции столбца - PullRequest
0 голосов
/ 14 ноября 2018

У меня есть данные на таблицу, как это

enter image description here

и код PHP ниже

<table id="datatable" border="1">
<thead>
<tr>
  <th></th>

    <?php
    $rpID = array();
    require("../config/db.php");
    $qRejectProcess = oci_parse($c1, "
        SELECT * FROM(
        SELECT
        SUM(O.QUANTITY),
        P.RP_NAME,
        O.RPID_FK
        FROM
        WA_LFO_TBL_REJECT_PROCESS P,
        WA_LFO_TBL_REJECT_OUTPUT O
        WHERE
        P.RP_ID = O.RPID_FK
        GROUP BY
        P.RP_NAME,
        O.RPID_FK
        ORDER BY
        SUM(O.QUANTITY) DESC)
        WHERE
        ROWNUM <= 10
    ");
    oci_execute($qRejectProcess);
    while($dRejectProcess = oci_fetch_array($qRejectProcess))
    {
        $rpID[] = $dRejectProcess['RPID_FK'];
        ?>
        <th><?php echo $dRejectProcess['RP_NAME']; ?></th>
    <?php
    }
  ?>
</tr>
</thead>
<tbody>
<?php
$qModel = oci_parse($c1, "SELECT * FROM WA_LFO_TBL_MODEL WHERE ACTIVE = 'Y' ORDER BY MODEL_NAME ASC");
oci_execute($qModel);
while($dModel = oci_fetch_array($qModel))
{
?>
    <tr>
        <th><?php echo $dModel['MODEL_NAME']; ?></th>

        <?php
        $qOutputReject = oci_parse($c1, "
        SELECT * FROM(
        SELECT
        SUM(O.QUANTITY) AS TOTAL_QUANTITY,
        P.RP_NAME,
        O.RPID_FK
        FROM
        WA_LFO_TBL_REJECT_PROCESS P,
        WA_LFO_TBL_REJECT_OUTPUT O
        WHERE
        P.RP_ID = O.RPID_FK AND
        O.MODELID_FK = '" . $dModel['MODELID'] . "'
        GROUP BY
        P.RP_NAME,
        O.RPID_FK
        ORDER BY
        SUM(O.QUANTITY) DESC)
        WHERE
        ROWNUM <= 10
        ");
        oci_execute($qOutputReject);
        while($dOutputReject = oci_fetch_array($qOutputReject))
        {
        ?>
            <td><?php echo $dOutputReject['TOTAL_QUANTITY']; ?></td>
        <?php
        }
        ?>
    </tr>
<?php
}
?>

В этой таблице вы можете видеть CitySiren, что количество 46 должно принадлежать Piezo sound level и 1 для Battery level. В этом случае Battery level не входит в топ-10 по моему запросу. Таким образом, количество не должно быть там.

Что я ожидаю, так это enter image description here

Мой вопрос: как правильно установить количество на основе модели (в этом случае City Siren с количеством 46 должно быть на Piezo sound level процессе)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...