объединить несколько запросов SQL - PullRequest
0 голосов
/ 03 ноября 2011

В заголовке страниц моего сайта у меня несколько SQL-запросов. Например:

$sql_result = mysql_query("SELECT blah2 FROM misc WHERE id='1'", $db);
$rs = mysql_fetch_array($sql_result); $blah2 = $rs[blah2];

$sql_result = mysql_query("SELECT * FROM ip_bans WHERE IP='$ip'", $db);
if (mysql_num_rows($sql_result) != 0) { header("Location: banned.php"); }

$sql_result = mysql_query("SELECT * FROM accounts WHERE username='$un' AND pw='$pw'", $db);
$rs = mysql_fetch_array($sql_result); 
// do all account login check etc

$sql_result = mysql_query("SELECT * FROM members WHERE id='$id'", $db);
$rs = mysql_fetch_array($sql_result); 
// get members data

.. и более.

Вся эта информация необходима для каждой страницы моего сайта. Есть ли способ объединить их или просто ограничить количество запросов? Я полагаю, что со временем это станет довольно интенсивным для базы данных.

Я не слишком хорош в JOINs и прочем, это то, что мне нужно?

1 Ответ

0 голосов
/ 03 ноября 2011

Вы хотите использовать UNION.
Вот хороший учебник: http://www.tizag.com/sqlTutorial/sqlunion.php

Я бы порекомендовал вам использовать его только там, где это "естественно", а не объединять много разных запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...