sql >> Databáze >  >> RDS >> Mysql

jak vytvořit vnořený výběr na zend db

Musíte použít Zend_Db_Expr objekty ve vašem dotazu a struktury pole pro výběr AS .

níže je řešení, které hledáte:

<?php

$db = Zend_Db_Table::getDefaultAdapter();

//  inner query
$sqlSalesRepTotal = $db->select()
        ->from(array('ps' => 'profile'))
        ->joinLeft(array('xbp' => 'xref_store_profile_brand'), 'xbp.profile_id = ps.profile_id')
        ->where('xbp.brand_id = b.brand_id')
        ->where('ps.role = ?', 'salesrep')
        ->where('xbp.store_id IS NULL');

//  main query
$sql = $db->select()
        ->from(array('b' => 'brand'), array(
            //  NOTE: have to add parentesis around the expression
            'salesrepTotal' => new Zend_Db_Expr("($sqlSalesRepTotal)")
        ))
        ->where('....')
        ->group('brand_id');


//  debug
var_dump($db->fetchAll($sql));



  1. Posouvatelná/aktualizovatelná sada výsledků MySQL nefunguje podle očekávání

  2. Import souboru .sql na windows do postgresql

  3. Ruby 'pg' drahokam odkazující na špatnou kopii libpq.5.dylib (na OSX)

  4. Jak funguje Trunc() v PostgreSQL