查询以保留未减去的元组

时间:2015-09-24 06:52:18

标签: mysql sql sql-server sql-server-2008 sql-server-2005

我有两张表如下

表1

name number
a    100
b    150
c    200

表2

name number
a    10
b    20

如何编写查询以减去两个表并保留c

等值

输出应为:

name number
a     90
b     130
c     200

我知道如何让ab无法弄清楚如何保留c

1 个答案:

答案 0 :(得分:1)

使用LEFT JOINCOALESCE

SQL Fiddle

SELECT
    t1.name as name,
    numer = t1.number - COALESCE(t2.number, 0)
FROM table1 t1
LEFT JOIN table2 t2
    ON t2.name = t1.name