2013-04-13 33 views
0

我不知道這裏發生了什麼。也許我一直在盯着這段代碼太久。查詢加入結果似乎不正確

查詢我有如下:

CREATE VIEW v_sku_best_before AS 
    SELECT 
    sw.sku_id, 
    sw.sku_warehouse_id "A", 
    sbb.sku_warehouse_id "B", 
    sbb.best_before, 
    sbb.quantity 
    FROM SKU_WAREHOUSE sw 
    LEFT OUTER JOIN SKU_BEST_BEFORE sbb 
     ON sbb.sku_warehouse_id = sw.warehouse_id 
    ORDER BY sbb.best_before 

我可以張貼表定義是否有幫助,但我不知道它會的。只需說SKU_WAREHOUSE.sku_warehouse_id是一個標識列,SKU_BEST_BEFORE.sku_warehouse_id是一個使用該標識作爲外鍵的子級。

這裏的結果,當我運行查詢:

+--------+-----+----+-------------+----------+ 
| sku_id | A | B | best_before | quantity | 
+--------+-----+----+-------------+----------+ 
| 20251 | 643 | 11 | <<null>> |  140 | 
+--------+-----+----+-------------+----------+ 
(1 row) 

的加入指定的sku_warehouse_id列必須是平等的,但是當我拉的ID從每個表(標記爲AB)他們」不同。

我在做什麼錯?

回答

1

也許只是sw.sku_warehouse_id而不是sw.warehouse_id

+0

謝謝,Nerdwood。我明顯一直盯着這個太久了...... doh! – Andrew

+0

沒問題,我絕對知道這種感覺! – Nerdwood