sql查询连接查询输出给出重复项

时间:2012-08-01 05:25:23

标签: mysql

所以我想同时从3个表中提取信息,但每当我更新时 我对table1的查询它给了我重复并覆盖了之前的条目,比如在车库列中的行n,如果我将车库更新为红色,它也将显示前一个条目的红色。 关于如何做到这一点的任何想法?

SELECT `date`,`tagid`,`garage`,`class` 
FROM table1 JOIN table2 ON table1.number = table2.tagid
UNION SELECT `date`,`tagid`,`garage`,`class` 
FROM table1 JOIN table3 ON table1.number = table3.tagid

1 个答案:

答案 0 :(得分:1)

看起来你想做类似的事情:

SELECT date, tagid, garage, class 
FROM table1 
LEFT JOIN (
    SELECT date, tagid, garage, class FROM table2 
    UNION
    SELECT date, tagid, garage, class FROM table3 
) AS table_2_and_3 ON (table1.number = table_2_and_3.tagid)

如果它们在表1中,您可能需要删除第4行和第6行的某些字段。