Мне нужно получить счет из таблицы, основываясь на данных из 2 других таблиц.
Это моя структура таблиц:
table1 (id, name)
table2 (id, a, b, c)
table3 (id, blah)
Могу ли я сделать все это в одном утверждении? Как то так:
SELECT count(*) from table3 WHERE table2.x=table1.name
Сложная часть - столбец x - это имя 'table1.name'. Так что я на самом деле не знаю, что такое х, когда я выполняю оператор.
Это заставляет меня думать, что мне нужно выполнить инструкцию, чтобы найти имя x, прежде чем я запусту эту.
Или ... может быть, какой-то JOIN?
ТЕКУЩИЙ КОД, КОТОРЫЙ Я ИСПОЛЬЗУЮ:
if ($rs[firearm] != "") {
$sql_result2 = mysql_query("SELECT * FROM db_firearms WHERE name='$rs[firearm]'", $db);
$rs2 = mysql_fetch_array($sql_result2);
$sql_result3 = mysql_query("SELECT * FROM items_firearms WHERE player='$id'", $db);
$rs3 = mysql_fetch_array($sql_result3);
if ($rs3[$rs2[shortname]] < 1) {
mysql_query("UPDATE players SET firearm = '' WHERE id ='$id'");
}
}