Проверить наличие записи в бд из 2млн

rockboy2012

Новичок
Подскажите оптимальный способ проверить наличии записи в небольшой БД из 2х млн строк.

На текущий момент делаю так:
$count = mysql_unbuffered_query("SELECT COUNT(s) from mp3 WHERE s='".$proverka."'");
$row = mysql_fetch_array($count);
$total = $row[0];
if ($total==0){добавляю эту запись в БД, ибо она уникальна}

как то по другому наличие записи в бд можно проверить?
 

antson

Новичок
Партнер клуба
Почитай про insert ignore и insert on duplicate key update . Возможно снимется проблема предварительной проверки
 

prolis

Новичок
к двум предыдущим ответам, подразумевается что по полю S индекс должен быть уникальным (UNIQUE).
и на будущее, проверить наличие хоть одной записи
PHP:
$result = mysql_query("SELECT field FROM table1 where field=value limit 1", $link);
$num_rows = mysql_num_rows($result);
 

Духовность™

Продвинутый новичок
вообще надо explain смотреть и время ответа. а то может с индексом и проблем не будет..
 
Сверху