prof.seo
Постоялец
- Регистрация
- 25 Мар 2009
- Сообщения
- 60
- Реакции
- 20
- Автор темы
- #1
Час добрый,
осваеваю пхп, дошел до баз данных, нужна помощь!)
Есть необходимость написать скрипт - парсер бд, который будет осуществлять поиск регулярного выражения по заданному полю таблицы и записывать результат в файл. Специфика заключается в том, что размер таблицы ~150мб. На данный момент решение такое:
	
	
	
		
В таблице >50000 записей, получается, что мой скрипт сделает столько же запросов - это очень долго и помоему не очень рационально.
Возможно ли за один запрос получить содержимое нескольких полей?
Те получить содержимое поля $Field для записей с 1 по 30 в массив. Основная цель - повышение КПД) - уменьшить кол-во обращений к БД, повысить скорость выполнения скрипта, ну и в этом духе все)
Буду благодарен за любую помощь по сабжу!)
	
		
			
		
		
	
				
			осваеваю пхп, дошел до баз данных, нужна помощь!)
Есть необходимость написать скрипт - парсер бд, который будет осуществлять поиск регулярного выражения по заданному полю таблицы и записывать результат в файл. Специфика заключается в том, что размер таблицы ~150мб. На данный момент решение такое:
		PHP:
	
	$DBQuery = mysql_query("SELECT * FROM tbl1");
$Field =  'fieldname';
for ($c=0; $c<mysql_num_rows($DBQuery); $c++)
{
$FieldContent = mysql_result ($DBQuery, $c, $Field);
preg_match_all("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,4}/i",$FieldContent, $Result);
for($ResultCount=0; $ResultCount < count($Result[0]); $ResultCount++)
	{
	WriteString ($Result[0][$MailsCount]);
	}
}В таблице >50000 записей, получается, что мой скрипт сделает столько же запросов - это очень долго и помоему не очень рационально.
Возможно ли за один запрос получить содержимое нескольких полей?
Те получить содержимое поля $Field для записей с 1 по 30 в массив. Основная цель - повышение КПД) - уменьшить кол-во обращений к БД, повысить скорость выполнения скрипта, ну и в этом духе все)
Буду благодарен за любую помощь по сабжу!)
 
				 
 
		