使用sqlite中的现有表加入查询结果集?

时间:2015-09-11 22:26:30

标签: sqlite

我有一个像这样的查询结果集:

value | id 
500   | 1
400   | 1
300   | 2

和产品表:

product_name | id 
product_1    | 1 
product_2    | 2 
product_5    | 3
product_6    | 4 
product_9    | 5 
product_0    | 6

现在,我想从产品表中为查询结果集中的每一行找到 product_name ,并将结果加入如下所示:

加入后的结果应如下:

product_name | id | value
product_1    | 1  | 500
product_1    | 1  | 400
product_2    | 2  | 300

我很困惑如何使用左连接来实现结果。

1 个答案:

答案 0 :(得分:0)

您将根据两个表之间的共同值加入;在这种情况下,它是id

您似乎不想要value的任何NULL值,因此您不会使用LEFT JOIN;你想要一个INNER JOIN

这会让你得到你想要的东西;请记住,这是未经测试的。

SELECT p.product_name, qr.id, value
FROM product p
INNER JOIN query_result_set qr ON qr.id = p.id
ORDER BY value DESC;

此外,您的期望是错误的 - product_5的ID为3,因此它不会出现在此联接结果中。