E ai gente.
Ainda nao ser fazem a clausula que quero, que é juntar as informaçoes de 2 tabelas para serem exibidos em apenas um recordset.
meu caso:
quero pegar informacoes da tabela professores coma tabal cursos, pra exibir em um unico recors set. estava usando assim:
SQL = "SELECT * FROM tbl_cursos RIGHT JOIN tbl_professores ON tbl_cursos.id_cursos = tbl_professores.cod_cursos WHERE tbl_cursos.id_cursos = " & Request.QueryString("ID")& ""
* o Request.QueryString("ID") é o ID do curso. Ou seja, pegar todos os professores que tiverem o memso id do curso escolhido numa pagina anterior.
como faça essa juncao de tabela? podem me ajudar. agradeceria muito.!!!
Clausula Juntando 2 Tabelas
Started By doltom, 16/12/2004, 08:04
5 replies to this topic
#1
Posted 16/12/2004, 08:04
Assinatura editada
Por favor, somos um forum sério, faça uso de palavras mais apropriadas em sua assinatura.
Por favor, somos um forum sério, faça uso de palavras mais apropriadas em sua assinatura.
#2
Posted 16/12/2004, 09:04
pessoal, achei uma solução:
SQL = "SELECT * FROM tbl_professores LEFT JOIN tbl_materias ON tbl_professores.cod_materias = tbl_materias.id_materias WHERE tbl_professores.cod_materias = "&request.Querystring("ID")&""
so que surgiu outro problema, junto a essa clausula quero pegar um campo de uma outra tabela (uma 3º tabela)
exste uma unica clausula que junto 3 tabelas?
SQL = "SELECT * FROM tbl_professores LEFT JOIN tbl_materias ON tbl_professores.cod_materias = tbl_materias.id_materias WHERE tbl_professores.cod_materias = "&request.Querystring("ID")&""
so que surgiu outro problema, junto a essa clausula quero pegar um campo de uma outra tabela (uma 3º tabela)
exste uma unica clausula que junto 3 tabelas?
Assinatura editada
Por favor, somos um forum sério, faça uso de palavras mais apropriadas em sua assinatura.
Por favor, somos um forum sério, faça uso de palavras mais apropriadas em sua assinatura.
#3
Posted 16/12/2004, 09:13
kra...eu nunca usei o inner join eu faço assim
Select * from tabela1, tabela2, tabela3 where tabela1.id = 2 AND tabela2.id = 5
OR tabela3.id = 22
e se quiser apenas pegar um campo especifico fica assim
SELECT tabela1.campo, tabela2.campo, tabela3.campo FROM tabela1, tabela2, tabela3 WHERE tabela1.id = 2 AND tabela2.id = 5
OR tabela3.id = 22
dá até para vc fazer um 'alias' com os nomes das tabelas
SELECT * FROM tabela1 as tb1, tabela2 as tb2, tabela3 as tb3 where tb1.campo = string OR tb2.campo = string AND tb3.campo = string
Select * from tabela1, tabela2, tabela3 where tabela1.id = 2 AND tabela2.id = 5
OR tabela3.id = 22
e se quiser apenas pegar um campo especifico fica assim
SELECT tabela1.campo, tabela2.campo, tabela3.campo FROM tabela1, tabela2, tabela3 WHERE tabela1.id = 2 AND tabela2.id = 5
OR tabela3.id = 22
dá até para vc fazer um 'alias' com os nomes das tabelas
SELECT * FROM tabela1 as tb1, tabela2 as tb2, tabela3 as tb3 where tb1.campo = string OR tb2.campo = string AND tb3.campo = string
Estou aqui para programar, não para ser programado...
esse sistema está falho, não penso em arruma-lo quero mais é que se xxxxxx...
vou criar o meu sistema, ajudas são muito bem vindas e recompensadas...
Aquele Abraço
esse sistema está falho, não penso em arruma-lo quero mais é que se xxxxxx...
vou criar o meu sistema, ajudas são muito bem vindas e recompensadas...
Aquele Abraço
#4
Posted 16/12/2004, 09:44
SELECT T1.*, T2*, T3.*, FROM tabela1 T1 INNER JOIN tabela2 T2 ON T1.ID = T2.ID INNER JOIN tabela3 T3 ON T2.ID = T3.ID
Você pode por N tabelas dentro de um SELECT. Se tiver mais alguma dúvida é só postar.
Abraços
Você pode por N tabelas dentro de um SELECT. Se tiver mais alguma dúvida é só postar.
Abraços
#5
Posted 16/12/2004, 11:12
valeu cara!!! brigadao
Assinatura editada
Por favor, somos um forum sério, faça uso de palavras mais apropriadas em sua assinatura.
Por favor, somos um forum sério, faça uso de palavras mais apropriadas em sua assinatura.
#6
Posted 16/12/2004, 11:44
soh vc ficar esperto.. use INNER JOIN se vc tem realmente certeza q existe um registro de professor para o curso.. pois caso contrario.. o registro de curso naum aparece.. se for o caso vc usa LEFT OUTER JOIN.valeu cara!!! brigadao
MCAD, MCP
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)