Если мы выбираем только одно поле и в результате такой выборки образуются IDшники, то можно сделать так:
SELECT `data`, `need`
FROM `tab2`
WHERE `id2` IN (SELECT `id1` FROM `tab1` WHERE...)
Как повторить трюк при условии что внутренний запрос выбирает больше данных:
SELECT `id1`, `data1`, `data2`
FROM `tab1` WHERE...
Так в выборке не только id1 но ещё и data1, data2, можно ли внутри IN указать что из всего массива меня интерессуют именно id1?