1

Hi I need write this sql with Zend_Db_Select, but I dont know how I can write subqueries. I would appreciate any help. Thanks.

SELECT * FROM advert WHERE categoryId
           IN (
             SELECT id
              FROM `tree`
              WHERE `lft` BETWEEN 
               (SELECT lft FROM tree WHERE id = '2') AND 
               (SELECT rgt FROM tree WHERE id = '2'))
Adnan
  • 25,882
  • 18
  • 81
  • 110
user606533
  • 11
  • 1
  • 3

2 Answers2

1
// create the main query
$select = new Zend_Db_Select();

//create the subquery
$subSelect = new Zend_Db_Select();

// using the subquery in main query
$select->where('table.field IN(?)', $subSelect->assemble());
Tim Stone
  • 19,119
  • 6
  • 56
  • 66
0

Maybe this answer will help you decide between using standard sql queries and zf-made ones.

I myself don't recommend using Zend_Db_Select for complex and scarcely used queries.

Community
  • 1
  • 1
nevvermind
  • 3,302
  • 1
  • 36
  • 45