Ich recherchiere ein wenig, nachdem ich jchamberlains Kommentar zu where
gelesen habe caluse unter seiner Antwort und ich kam zu dem Schluss, dass
- Sie sollten immer
UpperCamelCase
verwenden Stil, wenn Sie Spaltennamen in Antriebsfunktionen eingeben, auch wenn es manchmal gut funktioniert, wenn Sie diesen Stil nicht verwenden - Lösung hängt von der Propel-Version ab
Wahrscheinlich gibt es keine Lösung für Propel <=1.6.7 (oder vielleicht ist die rohe SQL-Abfrage die einzige Lösung), denn egal wie sehr ich es versuche, ich endet immer mit Cannot fetch ColumnMap for undefined column: ID_TABLE_B
Propel-Ausnahme.
Für Propel>=1.6.8 funktioniert das:
Wenn Sie Array benötigen mit Alias-Spalten als Ergebnis
TableAQuery::create()
->useTableBQuery('a')
// some filters methods
->endUse()
->useTableBQuery('b')
// some filters methods
->endUse()
->select(array('a.Value1', 'b.Value2')) // notice a.value_1 or b.value_2 won't work
->find();
Wenn Sie Objekte benötigen mit virtuellen Spalten aus Alias-Spalten
TableAQuery::create()
->useTableBQuery('a')
// some filters methods
->endUse()
->useTableBQuery('b')
// some filters methods
->endUse()
->withColumn('a.Value1') // notice a.value_1 won't work
->withColumn('b.Value2') // notice b.value_2 won't work
->find();