Нужна помощь...
Надо сравнить данные из двух таблиц
например:
1 таблица - Имя
2 таблица - Имя
Вот надо сравнить данные по "Имени"... тем которые совпадают, вписать во вторую таблицу по этому "Имени", например "1" (online как бы), а тем которые не совпадают "0"... кАша

Как бы получается:
В первой таблице находится список ONLINE
А во-второй, АРХИВ...
Т.е если в первой таблице появляется ИМЯ которое есть во-второй таблице, во вторую таблицу по этому ИМЕНИ мы обновляем на "ONLINE", как только он пропал из первой таблицы, мы ему ставим "OFFLINE".

Спустя 6 часов, 36 минут, 22 секунды (7.01.2010 - 12:13) sergeiss написал(а):
Используй JOIN в запросе. Он как раз и нужен для этой цели.
Спустя 3 минуты, 53 секунды (7.01.2010 - 12:17) uMnepaTop написал(а):
Сделал болееееееееее примитывным способом) спасибо)
Только вопросик появился, как не начинать новый процесс MySQL пока не завершился другой?
например, у меня сначала идет ИНСЕРТ, а потом АПДЕЙТ...
Мне надо, чтобы пока ИНСЕРТ не закончит, АПДЕЙТ не начинать =\\
Только вопросик появился, как не начинать новый процесс MySQL пока не завершился другой?
например, у меня сначала идет ИНСЕРТ, а потом АПДЕЙТ...
Мне надо, чтобы пока ИНСЕРТ не закончит, АПДЕЙТ не начинать =\\
Спустя 2 часа, 39 минут, 32 секунды (7.01.2010 - 14:56) Ka4_0k написал(а):
Цитата (uMnepaTop @ 7.01.2010 - 09:17) |
Сделал болееееееееее примитывным способом) спасибо) Только вопросик появился, как не начинать новый процесс MySQL пока не завершился другой? например, у меня сначала идет ИНСЕРТ, а потом АПДЕЙТ... Мне надо, чтобы пока ИНСЕРТ не закончит, АПДЕЙТ не начинать =\\ |
Про более простой способ: подозреваю в 2 запроса

А про очерёдность могу ошибатся, но DELAYED в запросе, или LOCK TABLES посмотреть.
Спустя 36 минут, 17 секунд (7.01.2010 - 15:33) uMnepaTop написал(а):
делаед не подходит...) а про один запрос.... не знаю как его составить =\\
Спустя 1 день, 22 часа, 27 минут, 48 секунд (9.01.2010 - 14:01) uMnepaTop написал(а):
Блин, Лок таблес тоже не подходит походу...
Спустя 1 час, 13 минут, 42 секунды (9.01.2010 - 15:14) FatCat написал(а):
Цитата (uMnepaTop @ 7.01.2010 - 13:17) |
не надо, чтобы пока ИНСЕРТ не закончит, АПДЕЙТ не начинать =\\ |
Сделай в одной сессии обращения к sql.
При коннекте к базе сохраняем идентификатор сессии:
$this->connection_id = mysql_connect( $this->obj['sql_host'] ,
$this->obj['sql_user'] ,
$this->obj['sql_pass']
);
Затем все запросы идут по этому идентификатору:
mysql_query($the_query, $this->connection_id);
Спустя 1 час, 10 минут, 25 секунд (9.01.2010 - 16:25) uMnepaTop написал(а):
мм, а это вариант
сейчас попробую)

сейчас попробую)
Спустя 1 день, 2 часа, 43 минуты, 47 секунд (10.01.2010 - 19:08) Guest написал(а):
Разделил на 2 файла... И в одном поставил sleep(); =\\
Только без проблем не обходится... какие способы оптимизации запросов есть?)
Только без проблем не обходится... какие способы оптимизации запросов есть?)
Спустя 36 секунд (10.01.2010 - 19:09) uMnepaTop написал(а):
Ой сорри, забыл залогиниться =\\
Спустя 10 дней, 1 час, 34 минуты, 11 секунд (20.01.2010 - 20:43) Пупкин_василий написал(а):
помогите плиз
<?php
include "config.php";
echo <<<HTML
<table border=0, align=center>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор материнской платы
$query = mysql_query("SELECT * FROM maternal_charge ");
echo <<<HTML
<tr>Выберите материнскую карту</tr>
<tr>
<select name="mb">
HTML;
while ($mb = mysql_fetch_array($query))
echo <<<HTML
<option >$mb[producer]-$mb[model]-$mb[port_HDD]-$mb[socket]-$mb[type_to_memories]-$mb[format]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор процессора
$query = mysql_query(" SELECT * FROM processors ");
echo <<<HTML
<tr>Выберите процессор</tr>
<tr>
<select name="cpu">
HTML;
while ($cpu = mysql_fetch_array($query))
echo <<<HTML
<option >$cpu[producer]-$cpu[model]-$cpu[socket]-$cpu[frequency]-$cpu[namber_core]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор памяти
$query = mysql_query("SELECT * FROM memory ");
echo <<<HTML
<tr>Выберите оперативную память</tr>
<tr>
<select name="mem">
HTML;
while ($mem = mysql_fetch_array($query))
echo <<<HTML
<option>$mem[producer]-$mem[standard]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор видео карты
$query = mysql_query("SELECT * FROM video_card ");
echo <<<HTML
<tr>Выберите видео карту</tr>
<tr>
<select name="video">
HTML;
while ($video = mysql_fetch_array($query))
echo <<<HTML
<option >$video[producer]-$video[model]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор жесткого диска
$query = mysql_query("SELECT * FROM hdd ");
echo <<<HTML
<tr>Выберите жесткий диск</tr>
<tr>
<select name="hdd">
HTML;
while ($hdd = mysql_fetch_array($query))
echo <<<HTML
<option >$hdd[producer]-$hdd[type]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор корпуса
$query = mysql_query("SELECT * FROM body ");
echo <<<HTML
<tr>Выберите тип корпуса</tr>
<tr>
<select name="body">
HTML;
while ($body = mysql_fetch_array($query))
echo <<<HTML
<option >$body[producer]-$body[type_of_the_body]-$body[type_of_the_maternal_charge]-$body[color]</option>
HTML;
echo <<<HTML
</select>
</tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор БП
$query = mysql_query("SELECT * FROM power ");
echo <<<HTML
<tr>Выберите блок питания</tr>
<tr>
<select name="pwr">
HTML;
while ($pwr = mysql_fetch_array($query))
echo <<<HTML
<option >$pwr[producer]-$pwr[power]-$pwr[type]</option>
HTML;
echo <<<HTML
</select>
</tr>
HTML;
echo <<<HTML
</table>
HTML;
?>
КАК в разварачивающихся списках зделать свять.
например первые два списка связать по сокету. = выбрав значение из первого списка, во втором остаются те, значения, которые похожи по сокету из выбранного в первом
<?php
include "config.php";
echo <<<HTML
<table border=0, align=center>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор материнской платы
$query = mysql_query("SELECT * FROM maternal_charge ");
echo <<<HTML
<tr>Выберите материнскую карту</tr>
<tr>
<select name="mb">
HTML;
while ($mb = mysql_fetch_array($query))
echo <<<HTML
<option >$mb[producer]-$mb[model]-$mb[port_HDD]-$mb[socket]-$mb[type_to_memories]-$mb[format]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор процессора
$query = mysql_query(" SELECT * FROM processors ");
echo <<<HTML
<tr>Выберите процессор</tr>
<tr>
<select name="cpu">
HTML;
while ($cpu = mysql_fetch_array($query))
echo <<<HTML
<option >$cpu[producer]-$cpu[model]-$cpu[socket]-$cpu[frequency]-$cpu[namber_core]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор памяти
$query = mysql_query("SELECT * FROM memory ");
echo <<<HTML
<tr>Выберите оперативную память</tr>
<tr>
<select name="mem">
HTML;
while ($mem = mysql_fetch_array($query))
echo <<<HTML
<option>$mem[producer]-$mem[standard]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор видео карты
$query = mysql_query("SELECT * FROM video_card ");
echo <<<HTML
<tr>Выберите видео карту</tr>
<tr>
<select name="video">
HTML;
while ($video = mysql_fetch_array($query))
echo <<<HTML
<option >$video[producer]-$video[model]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор жесткого диска
$query = mysql_query("SELECT * FROM hdd ");
echo <<<HTML
<tr>Выберите жесткий диск</tr>
<tr>
<select name="hdd">
HTML;
while ($hdd = mysql_fetch_array($query))
echo <<<HTML
<option >$hdd[producer]-$hdd[type]</option>
HTML;
echo <<<HTML
</select></tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор корпуса
$query = mysql_query("SELECT * FROM body ");
echo <<<HTML
<tr>Выберите тип корпуса</tr>
<tr>
<select name="body">
HTML;
while ($body = mysql_fetch_array($query))
echo <<<HTML
<option >$body[producer]-$body[type_of_the_body]-$body[type_of_the_maternal_charge]-$body[color]</option>
HTML;
echo <<<HTML
</select>
</tr>
HTML;
// ХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ Выбор БП
$query = mysql_query("SELECT * FROM power ");
echo <<<HTML
<tr>Выберите блок питания</tr>
<tr>
<select name="pwr">
HTML;
while ($pwr = mysql_fetch_array($query))
echo <<<HTML
<option >$pwr[producer]-$pwr[power]-$pwr[type]</option>
HTML;
echo <<<HTML
</select>
</tr>
HTML;
echo <<<HTML
</table>
HTML;
?>
КАК в разварачивающихся списках зделать свять.
например первые два списка связать по сокету. = выбрав значение из первого списка, во втором остаются те, значения, которые похожи по сокету из выбранного в первом
Спустя 1 минута, 3 секунды (20.01.2010 - 20:44) Пупкин_василий написал(а):
в данном случае во всех выпадающих списках выводятся все строки из БД
Спустя 22 минуты, 13 секунд (20.01.2010 - 21:07) arlamar написал(а):
не надо ничего менять в таблицах надо при выборке сделать JOIN как сказал sergeiss.
а именно SELECT u.*, uo.id AS is_online FROM users u
LEF JOIN users_online uo ON u.id=uo.uid
в результате при совпадении в is_online будет id пользователя если не совпадет то NULL
это ответ на первый пост) ато тут уже совсем о другом гвоорть стали
а именно SELECT u.*, uo.id AS is_online FROM users u
LEF JOIN users_online uo ON u.id=uo.uid
в результате при совпадении в is_online будет id пользователя если не совпадет то NULL
это ответ на первый пост) ато тут уже совсем о другом гвоорть стали