[英]How can I get all field values from a query with JOINed tables?
我有這個基本查詢:
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
我正在使用PEAR
MDB2
來執行它並讀取返回值。
但不知何故,結果數組始終包含從田間地頭order_positions
只表!,即結果數組看起來像這樣
row[code] = 'abc123'
雖然我希望它看起來像這樣
row[description] = 'my description'
row[code] = 'abc123'
我已經嘗試了以下方法:
code
,然后description
。 SELECT FROM table1, table2 WHERE table1.id = table2.id
) AS
別名。 其他一些事實:
order_positions
表似乎都是首選。 與其他表連接時,我仍然只能從該表中獲取字段。 好的,我找到了原因:
具有NULL
值的字段不會添加到數組中。 在我的測試場景中, description
實際上為null,因此在數組中不可用。
我仍然保留這個(令人尷尬的)問題,以防萬一將來有人遇到這個問題。
Facepalm http://www.scienceblogs.de/frischer-wind/picard-facepalm-thumb-512x409.jpg
這應該工作:
SELECT d.description, o.code
FROM order_positions o, article_descriptions d
WHERE o.order_id = 1 AND d.article_id = o.article_id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.