0

所以我想同时从 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
4

1 回答 1

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)

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

于 2012-08-01T05:54:11.340 回答