2016-08-18 2 views
0

У меня есть запрос:Используя результат запроса в другой запрос

$sql1="SELECT column1 FROM table_A WHERE username LIKE '".$username."';"; 
// This may return multiple rows 

Теперь мне нужно использовать результат этого запроса в другой:

$sql2="select all from table_B where mycolumn equals to result we got above" 
+1

И что мешает вам делать именно это? получить результат из первого запроса, как обычно, и использовать его во втором запросе? – Epodax

+0

или просто создать запрос типа $ sql2 = выберите все из table_B, где mycolumn равно (SELECT column1 FROM table_A WHERE username LIKE '". $ Username."'); ' –

+0

Мои знания бедны, некоторая помощь будет отличной – user6650650

ответ

2

Попробуйте это:

$sql = "select all from table_B where mycolumn in (SELECT column1 FROM table_A WHERE username LIKE'".$username."')"; 
+0

Эй, это работает человек, спасибо =) – user6650650

+0

@ user6650650 должен знать об инъекциях SQL. –

1

Использование JOINS:

$sql = "SELECT 
       table_B.* 
     FROM table_A 
     INNER JOIN table_B ON (table_A.column1 = table_B.mycolumn) 
     WHERE table_A.username LIKE '".$username."'"; 
Смежные вопросы