sql >> Database teknologi >  >> RDS >> Mysql

Cakephp 2.0 mysql-forespørgsel

Jeg er ikke sikker på, hvad du allerede har gjort, og hvordan din controller/model er navngivet, så jeg sætter bare kodeeksempler, som kan hjælpe med at forstå den grundlæggende idé.

I Hpsas-modellen er "mange til en"-relation defineret.

class Hpsas extends AppModel {
    public $belongsTo = array(
        'uniqueAlias1' => array(
            'className'  => 'Ldaps',
            'foreignKey' => 'ciname'
        )
    );
/... 

I Ldaps-modellen er "en til mange" forhold defineret.

class Ldaps extends AppModel {
    public $hasMany = array(
        'uniqueAlias2' => array(
            'className'  => 'Hpsas',
            'foreignKey' => 'ciname'
        ),
    );
/...

Udfør nu koden $this->Hpsas->find('all') på Hpsass controller vil du sandsynligvis få følgende resultater:

array(
    (int) 0 => array(
        'uniqueAlias1' => array(
            //hpsas table row with value
        ),
        'uniqueAlias2' => array(
            //ldaps table row where hpsas.ciname = ldaps.ciname 
        )
    ),
        //rest hpsas table rows
)

Bliv ikke forvirret over alias jeg brugte i prøver, du kan navngive hvad du vil. De er praktiske, når det er nødvendigt at håndtere multiple associationer for samme model. Mere detaljerede forklarede eksempler kan findes på dokumentation .




  1. Postgresql indsæt trigger for at indstille værdi

  2. IN-klausul bruger ikke indeks

  3. Sammenføj to borde med stand - rubin på skinner

  4. Kø i OneWay WCF-meddelelser ved hjælp af Windows Service og SQL Server