从 sql 查询得到空结果

get empty result from sql query

我有这个查询:

select p1.cost as V1, p2.cost as V2 , p3.cost as V3 
from product p1, product p2, product p3 
where p1.id =1 and p2.id =2 and p3.id=3

在我的产品中 table 我只有一行:

id   | name       | cost
1    | product1   | 20

如您所见,我将得到空结果! 但是我该怎么做才能得到:

V1   | V2  | V3
20   |     |

您可以使用左连接:

SELECT    p1.cost AS V1, p2.cost AS V2 , p3.cost AS V3 
FROM      product p1
LEFT JOIN product p2 on p2.id = 2
LEFT JOIN product p3 on p3.id = 3
WHERE     p1.id = 1