我有以下查询:
SELECT a.id, a.Nome, ...
FROM cadClientes as a
...
join Contatos_Clientes as f on a.id = f.idCliente
问题是有时Contatos_Clientes
.
如果存在,我想Nome
从返回,否则从.Contatos_Clientes
Nome
cadClientes
我有以下查询:
SELECT a.id, a.Nome, ...
FROM cadClientes as a
...
join Contatos_Clientes as f on a.id = f.idCliente
问题是有时Contatos_Clientes
.
如果存在,我想Nome
从返回,否则从.Contatos_Clientes
Nome
cadClientes
如果您只想在一个表中不存在另一个表中的值时才显示它们,您应该将连接更改为 LEFT OUTER JOIN。例子:
SELECT Nome = COALESCE(c.Nome, cc.Nome) -- ,... Other columns
FROM dbo.cadClientes AS c
-- other joins...
LEFT OUTER JOIN dbo.Contatos_Clientes AS cc
ON c.id = cc.idCliente;
在创建/引用对象时请始终使用模式前缀,并尝试使用有意义的别名而不是 a,b,c...