私はこの基本的なクエリを持っています:
SELECT d.description, o.code FROM order_positions AS o
LEFT JOIN article_descriptions AS d ON (o.article_id = d.article_id)
WHERE o.order_id = 1
from を使用MDB2
しPEAR
て実行し、戻り値を読み取ります。
しかし、どういうわけか、結果の配列には常にorder_positions
テーブルのフィールドのみが含まれます!つまり、結果の配列は次のようになります。
row[code] = 'abc123'
こうなりたいと思いながら
row[description] = 'my description'
row[code] = 'abc123'
私はすでに次のことを試しました:
- フィールドの順序を変更します。つまり、
code
最初に、次にdescription
. - 結合されたテーブルの順序を変更します。
- エイリアスの代わりに完全なテーブル名を使用しました。
- 代わりに「MySQL 結合」を使用しました (
SELECT FROM table1, table2 WHERE table1.id = table2.id
) - の有無にかかわらず使用されるエイリアス
AS
。
その他の事実:
- このクエリを MySQL Query Browser で実行すると問題なく動作し、すべてのフィールドが返されます。
order_positions
何があっても、テーブルが好まれているようです。追加のテーブルと結合すると、このテーブルからのみフィールドが取得されます。