Php 学说与外场的多对多关系

Php 学说与外场的多对多关系,php,schema,yaml,symfony-1.4,doctrine-1.2,Php,Schema,Yaml,Symfony 1.4,Doctrine 1.2,我想加入3表,萨姆拉,特梅克和瓦萨罗 这是我的模式: options: collate: utf8_unicode_ci charset: utf8 Szamla: actAs: [Timestampable] columns: datum: type: timestamp notnull: true total: type: float notnull: true fizetesi_datum:

我想加入3表,萨姆拉,特梅克和瓦萨罗

这是我的模式:

options:
    collate: utf8_unicode_ci
    charset: utf8

Szamla:
  actAs: [Timestampable]
  columns:
    datum:
      type: timestamp
      notnull: true
    total:
      type: float
      notnull: true
    fizetesi_datum:
      type: date
    fizetesi_ora:
      type: time
    teljesites:
      type: timestamp
    user_id:
      type: int(10)
      notnull: true
    afa:
      type: boolean
      notnull: true
      default: 0
  relations:
    SzamlaTermekek:
      class: Termek
      local: szamla_id
      foreign: termek_id
      refClass: SzamlaTermek

Vasarlo:
  columns:
    nev:
      type: string(255)
      notnull: true
    varos:
      type: string(200)
      notnull: true
    utca:
      type: string(200)
      notnull: true
    zip:
      type: string(10)
      notnull: true
    email:
      type: string(255)
      notnull: true
    orszh:
      type: string(4)
      notnull: true
    krzt:
      type: string(2)
      notnull: true
    telszama:
      type: string(4)
      notnull: true
    telszamb:
      type: string(3)
      notnull: true
  relations:
    Szamlak:
      class: Szamla
      type: many
      local: id
      foreign: user_id
      foreignAlias: Vasarlo

Termek:
  columns:
    nev:
      type: string(255)
      notnull: true
    leiras:
      type: string(500)
      notnull: true
    ar:
      type: float
      notnull: true
    raktar:
      type: string(255)
      notnull: true
      default: Dunaújváros
    raktaron:
      type: integer(4)
      notnull: true
      default: 0
    zarolt:
      type: boolean
      notnull: true
      default: 0
    jotallas:
      type: boolean
      notnull: true
      default: 0
    garancia:
      type: boolean
      notnull: true
      default: 0
    slider:
      type: integer(1)
      notnull: true
  relations:
    SzamlaTermekek:
      class: Szamla
      local: termek_id
      foreign: szamla_id
      refClass: SzamlaTermek

SzamlaTermek:
  columns:
    szamla_id:
      type: integer
      primary: true
    termek_id:
      type: integer
      primary: true
    number:
      type: integer
      notnull: true
      default: 1
查询:

   $query = Doctrine_Core::getTable($table)->createQuery('s');
    $query->leftJoin('Vasarlo v');
    $query->leftJoin('SzamlaTermekek t');
    $result = $query->fetchArray();
结果还可以,但需要SzamlaTermek提供的数字。我怎样才能得到数字字段呢?无需选择。

使用

->select('t.number')


如果不选择,您可以连接所有表,但您可以从所有3个表中获得所有字段,如:原则_查询::创建->来自“表a”->leftJoin'Vasarlo v'->leftJoin'SzamlaTermekek t';是的,使用Symfony:doctor_Core::getTable'Szamla'->createQuery's'->leftJoin'Vasarlo v'->leftJoin'SzamlaTermekek t'->fetchArray;类似这样的解决方案:Doctrine_Query::create->from'Szamla'->leftJoin'Szamla.Vasarlo v'->leftJoin'Szamla.SzamlaTermek t'->leftJoin't.SzamlaTermek szt ON t.id=szt.termek_id,Szamla.id=szt.Szamla_id=szt.Szamla_id=szt.szt.Szamla_id=szt;
$query->select('t.number')
       ->leftJoin('Vasarlo v')
       ->leftJoin('SzamlaTermekek t');