Как написать SQL запрос?
если правильно понял проблему, то для выборки аналогов по определенному idpriceSELECT * FROM analog  WHERE num IN (SELECT num FROM price WHERE idprice = 1)
4 часа? Сколько у вас там записей?
Безотносительно вашего вопроса, мне кажется вам не хватает индексов в таблицах или они не корректны, если они есть
А по поводу вопроса - попробуйте использовать IN в выборках