Exemplo
minha consulta produziria duas linhas para bob com oúnica diferença é o número de telefone. no entanto, a tabela na qual eu recebo os números de telefone tem uma identificação de tipo de telefone. por exemplo, a primeira linha para bob o ID do tipo de telefone seria 1 e a segunda linha seria 2. Preciso dos dois na mesma linha
Presumi que precisaria fazer uma subconsulta para cada tipo de identificação de telefone ... mas isso não parece estar funcionando. Eu continuo voltando
A subconsulta retornou mais de 1 valor. Isso não é permitido quando a subconsulta segue =,! =, <, <=,>,> = Ou quando a subconsulta é usada como uma expressão.
O que eu gostaria que minha consulta produzisse
O que eu preciso para a consulta produzir
obrigado
Respostas:
0 para resposta № 1Se você tiver um número limitado de tipos de telefone, poderá usar um JUNTA EXTERNA ESQUERDA em telephone
tabela para cada tipo. Ex:
SELECT e.name, t1.phoneNumber AS telephone1, t2.phoneNumber AS telephone2, e.email, ...
FROM person AS e
LEFT OUTER JOIN telephon AS t1 ON t1.personID = e.Id AND typeId = 1
LEFT OUTER JOIN telephon AS t2 ON t2.personID = e.Id AND typeId = 2
...
WHERE ....