RIGHT JOIN
Olá,
Estou tentando fazer um join para retornar os registros da tabela1, onde tabela1.campo1 seja igual a um valor x, e todos os registros da tabela2.
A tabela1 e a tabela2 tem um campo2 em comum, onde todos os tabela1.campo2 se emcontram na tabela2.campo2, mas nem todos tabela2.campo2 se encontram na tabela1.campo2.
Minha última tentativa foi essa:
SSQL = "SELECT fogmat.código,fog,explodido.desenho,fogmat.quantidade," & _
"FORMAT(fogmat.preço,'#,##0.00') AS [preço cobrado] " & _
"FROM fogmat " & _
"RIGHT JOIN explodido ON fogmat.desenho = explodido.desenho " & _
"WHERE fog = " & txtCodigo
Mas só retornaram os registros da tabela1.
Obrigado...
Estou tentando fazer um join para retornar os registros da tabela1, onde tabela1.campo1 seja igual a um valor x, e todos os registros da tabela2.
A tabela1 e a tabela2 tem um campo2 em comum, onde todos os tabela1.campo2 se emcontram na tabela2.campo2, mas nem todos tabela2.campo2 se encontram na tabela1.campo2.
Minha última tentativa foi essa:
SSQL = "SELECT fogmat.código,fog,explodido.desenho,fogmat.quantidade," & _
"FORMAT(fogmat.preço,'#,##0.00') AS [preço cobrado] " & _
"FROM fogmat " & _
"RIGHT JOIN explodido ON fogmat.desenho = explodido.desenho " & _
"WHERE fog = " & txtCodigo
Mas só retornaram os registros da tabela1.
Obrigado...
veja bem..teu join está correto (a sintaxe)....
mas primeira pergunta..o campo fog é de qual tabela ?
Este campo provavelmente esta limitando o right join.
Algo como se for da tabela 1 o fog, não existe nenhuma entrada na tabela2
pra este fog da tabela 1
Se vc tirar o fog = '' vai te trazer todos os dados da tabela 2 e somente os da tabela 1 que forem iguais..os que não forem os campos da tabela 1 virão null
é isso
mas primeira pergunta..o campo fog é de qual tabela ?
Este campo provavelmente esta limitando o right join.
Algo como se for da tabela 1 o fog, não existe nenhuma entrada na tabela2
pra este fog da tabela 1
Se vc tirar o fog = '' vai te trazer todos os dados da tabela 2 e somente os da tabela 1 que forem iguais..os que não forem os campos da tabela 1 virão null
é isso
é isso mesmo......vai te trazer todos da explodido e somente da fogmat quando desenho for igual nas duas..só que se vc colocar o campo fog igual a alguma coisa....já foge desta regra.Tenta fazer assim
SELECT A.código,A.fog,explodido.desenho,A.quantidade,
A.FORMAT(fogmat.preço,'#,##0.00') AS [preço cobrado]
FROM (select * from fogmat where fog = " & txtcodigo) A
RIGHT JOIN explodido ON A.desenho = explodido.desenho
SELECT A.código,A.fog,explodido.desenho,A.quantidade,
A.FORMAT(fogmat.preço,'#,##0.00') AS [preço cobrado]
FROM (select * from fogmat where fog = " & txtcodigo) A
RIGHT JOIN explodido ON A.desenho = explodido.desenho
Tópico encerrado , respostas não são mais permitidas