mysql сравнение двух целых чисел из двух таблиц

#php #mysql

#php #mysql

Вопрос:

 if($num>0) {
    echo "<table border=2> Table Request".$_SESSION['s1'];
    echo"<tr>
        <td>Id</td><td>Drug</td><td>Quantity</td>
        </tr>";
    for($i=0;$i<$num;$i  ) {
        $row=mysql_fetch_row($result);
        $r[$i]=$row[1];
        echo "<tr>";
        for($j=0;$j<$num1;$j  ) {
            echo"<td>$row[$j]</td>";
        }
        echo"<td><input type='Checkbox' name='p[$i]'  value='on' unchecked /></td>";
        echo"<td><input type='txt' name='q[$i]' /></td>";
        echo"</tr>";
        $r[$i]=$row[1];
    }
    if(isset($_POST['p'])) {
        foreach($_POST['p'] as $key=>$value) {
            if($value == "on") {
                $query8 = "select $r[$i] from $_SESSION['t'] ";
                echo $query8;
                $result8 = mysql_query($query8);
                $num8=Mysql_num_rows($result8);
                if($num8!=0) {
                    $query7="select qun from $_SESSION['t']";
                    $result7 = mysql_query($query8);
                    //?????????????????
                }
            }
            echo"</table>";
        }
    }//result
}//else
  

У меня есть запрос таблицы и другая таблица, например E.

Я хочу сравнить количество полей в этих таблицах

 if(select qun from request)<((select qun from $_SESSION['t'])) // some work
  

Как я могу написать этот код в той части, которую я пометил множеством вопросительных знаков?
это правильно?

Комментарии:

1. Почему вы не делаете отступ в своем коде должным образом? Прямо сейчас это трудно читать всем, включая вас.

2. пожалуйста, отредактируйте свой код и добавьте только важный параметр, слишком большой объем кода отвлекает людей от ответа на ваш вопрос

3. что вы имеете в виду? как я могу написать это, чтобы все поняли?

4. Можете ли вы удалить весь нерелевантный код и задать более четкий вопрос?

5. когда таблица будет проверена, она должна сравнить количество таблиц

Ответ №1:

Если вы действительно хотите то, что написано в названии, почему бы вам не сделать что-то подобное

 SELECT table1.quantity AS qu1, table2.quantity AS qu2 FROM table1, table2 WHERE your_conditions;
  

Когда вы получите результаты, вы можете сравнить qu1 с qu2.

Но если вы ищете что-то другое, пожалуйста, сформулируйте свой вопрос более конкретно.

Реальный пример:

 $query8 = 'SELECT '.$_SESSION[ 't'].'.'.$r[$i].' AS qu1, request.qun AS qu2 FROM '.$_SESSION[ 't'].', request';
$result8 = mysql_query($query8);
while ($row8 = mysql_fetch_array($result8)) {
    if ($row8[ 'qu1'] < $row8[ 'qu2']) {
        echo 'the value from '.$r[$i]. ' is smaller';
    } elseif ($row8[ 'qu1'] > $row8[ 'qu2']) {
        echo 'the value from '.$r[$i]. ' is bigger';
    } else {
        echo 'both values are same';
    }
}
  

Комментарии:

1. когда я выбираю их, это приведет к таблицам, да? я хочу поймать их и сравнить

2. Вы имеете в виду, что я могу это написать? $q=»выберите t1.qun как q1″; каким будет значение $ q? это просто строка, а не то целое число, моя проблема в этом.

3. как я могу получить значение integer из таблицы моего sql и сохранить его в переменной?

4. проверьте мой обновленный пост. поместите этот код после if($value == "on") { и удалите текущий.

5. ошибка, возможно, мой предыдущий код неверен, я пытаюсь использовать ваш код на другой странице, я думаю, вы правы, спасибо