2014-01-17 77 views
0

我試圖從一個特定的人返回所有訂單,我有兩個表,一個人和一個訂單,並使用聯接,它確實返回人的訂單,但是它返回的每個訂單該訂單的平方數量,例如,如果有兩個訂單相同,它將返回那些訂單中的4個。MySQL聲明返回的行太多

SELECT 
    o.* 
FROM 
    orderr o 
    LEFT JOIN person p 
    ON p.personID = o.personID 
WHERE p.first_name = ? 
+0

嘗試增加'DISTINCT'?像:'SELECT DISTINCT o。*'。或者,也許你需要刪除'NULL'行,因爲你是'LEFT JOIN'ing:'WHERE p.first_name IS NOT NULL'? –

+0

您的查詢應該可以正常工作,請參閱此小提琴的簡單示例:http://sqlfiddle.com/#!2/6e4b7/2/0。我想你的數據有問題。 – Aioros

回答

0

試試這個

SELECT DISTINCT 
     o.* 
    FROM 
     orderr o 
     LEFT JOIN person p 
     ON p.personID = o.personID 
    WHERE p.first_name = ?