mysql - 查询保留未减去的元组

标签 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

最佳答案

使用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

关于mysql - 查询保留未减去的元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32755119/

相关文章:

php - 如何查找两个 Mysql 表之间的缺失值

sql - 将 char 数据存储为 nvarchar 有什么危害? (而且不一致)

sql - 选择具有特定表和特定列的所有数据库

sql - SSIS:Excel 源代码 - 是否可以跟踪在 excel 中所做的更改?

mysql - 临时表而不是连接

mysql - Linux - Docker MySQL 镜像 - 创建 MYSQL_USER

MYSQL - 如何在从表中选择后更新

sql - 如何修复 sql server 页面级损坏?

javascript - Node js服务器: issue passing a variable to a function

mysql - 如何 ORDER BY varchar 字段作为数字?