chishikinohito
Новичок
Доргие друзья, привет!
Не могу разобраться доконца с запросом. Может Вам будет просто ответить на вопрос.
Использую PHP + Smarty.
Нужно сделать запрос в базу данных таким образом, чтобы результатом оказалось сравнение двух следующих запросов (которые работают отлично по отдельности)
Рабочий пример двух кодов PHP, smarty template и вывод результата.
1.
Получаем результат ID с видео, например 3, 4, 7, 23, 26, 77, 104
2. Второй запрос из таблицы GROUP_VDO, если ID видео находится в таблице GROUP_VDO то мы на той же странице получаем ответ:
Получаем результат ID с видео какие есть в GROUP_VDO, например 4, 10, 23
Все приведенное выше работает отлично.
У меня вопрос по внесению дополнительной функции.
Я не хочу, чтобы в результатах первого запроса отображались ID тех видео, которые могут присутствовать в результатах второго. В данном примере из первого запроса должны быть убраны результаты 4 и 23, так как они присутствуют во втором?
Или можно еще построить 3 запрос, таким образом, чтобы он из таблицы VIDEO выберал VID всех видео КРОМЕ тех, что присутствуют в GROUP_VDO
Насколько сложно это воплотить?
Прошу не ругать, все что я делаю, мое хобби - я не профи пока, в большом смысле слова.
Вот над чем работаю уже не первый год:
ikarate.ru
Всем заранее спасибо,
С уважением,
Илья
Не могу разобраться доконца с запросом. Может Вам будет просто ответить на вопрос.
Использую PHP + Smarty.
Нужно сделать запрос в базу данных таким образом, чтобы результатом оказалось сравнение двух следующих запросов (которые работают отлично по отдельности)
Рабочий пример двух кодов PHP, smarty template и вывод результата.
1.
PHP:
$sql = "SELECT * FROM video WHERE type = 'public'";
$rs = $conn->execute($sql);
$videos = $rs->getrows();
PHP:
{section name=i loop=$answers}
{$answers[i].VID}
{/section}
Получаем результат ID с видео, например 3, 4, 7, 23, 26, 77, 104
2. Второй запрос из таблицы GROUP_VDO, если ID видео находится в таблице GROUP_VDO то мы на той же странице получаем ответ:
PHP:
$sql = "SELECT * FROM group_vdo WHERE GID = '" .$GID. "'" . " ORDER BY AID DESC LIMIT " .$limit;
$rs = $conn->execute($sql);
$videosremove = array();
if ( $conn->Affected_Rows() ) {
$i = 0;
while ( !$rs->EOF ) {
$sql = "SELECT * FROM video WHERE VID = '" .$rs->fields['VID']. "' LIMIT 1";
$rsv = $conn->execute($sql);
if ( $conn->Affected_Rows() ) {
$video = $rsv->getrows();
$videosremove[$i] = $video['0'];
$rs->movenext();
++$i;
}
}
}
PHP:
{section name=i loop=$answersremove}
{$answersremove[i].VID}
{/section}
Все приведенное выше работает отлично.
У меня вопрос по внесению дополнительной функции.
Я не хочу, чтобы в результатах первого запроса отображались ID тех видео, которые могут присутствовать в результатах второго. В данном примере из первого запроса должны быть убраны результаты 4 и 23, так как они присутствуют во втором?
Или можно еще построить 3 запрос, таким образом, чтобы он из таблицы VIDEO выберал VID всех видео КРОМЕ тех, что присутствуют в GROUP_VDO
Насколько сложно это воплотить?
Прошу не ругать, все что я делаю, мое хобби - я не профи пока, в большом смысле слова.
Вот над чем работаю уже не первый год:
ikarate.ru
Всем заранее спасибо,
С уважением,
Илья