Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
É um pouco difícil explicar o que eu quero:
Ex: Tenho uma lista de artigos:
ARTIGO 1
ARTIGO 2
ARTIGO 3
ARTIGO n
Cada arquivo tem uma categoria (Economia, Mercado, Análise, etc......), mas no campo de cada artigo tem só o ID das categorias.
PERGUNTA:
Qual a melhor forma de mostrar o nome de cada categoria? Ex:
ARTIGO 1 - Economia
ARTIGO 2 - Mercado
ARTIGO 3 - Economia
ARTIGO 4 - Análise
ARTIGO n - Categoria n
COMO SEI FAZER ATUALMENTE:
Atualmente, para cada loop, abro a tabela de categorias de acordo com o ID. Ex:
Do while not RS2.eof
(OPEN TABELA DE CATEGORIAS WHERE ID = x)
Response.Write(RS1("nome") & RS2("nome"))
RS1.movenext
Loop
COMO GOSTARIA DE FAZER:
Queria saber se tem uma forma mais inteligente de fazer isso... sei lá, com ARRAY, com Cursor do BD... não sei como... tem como???
Ai caraca, me senti um leigo total agora, rsss!Meu select dos artigos é:SQL = "SELECT top 3 FROM links where idsecao=1 order by Id desc"rs1.openE aí em cada LOOP eu colocaria:SQL = "SELECT FROM links where idsecao=2 and id=" & rs1("idcolunista")rs2.open
se tens um campo relacionado entre tabelas tens que usar um select com inner join, mas pelo visto você sabe o básico no sql.....tem uma maneira na "gambiarra" que funciona, porém não é correto..seria assim:
SQL = "SELECT * FROM artigo where codigoArtigo=2 set rs1 = con.execute(sql)Do while not rs1.eof Response.Write(RS1("artigo")) SQL = "SELECT * FROM categoria where codigo_artigo_tabela_artigo=rs1("codigoArtigo") set rs2 = con.execute(sql) Do while not RS2.eof Response.Write(RS2("categoria")) RS2.movenext Loop RS1.movenextLoop
faz o teste e coloca o resultado ai...mas aconselho dar uma olhada nas apostilas e tutorias de sql, tem coisa que dá pra fazer que a gente nem imagina....facilita muito o servico
Não vai ter jeito, vou ter que aprender INNER JOIN. Não sei nem por onde começar. Alguém pode me dar uma ajuda nisso?jonathandj, então, isso é o que eu estava pensando em fazer, mas fiz muitos campos relacionados, se fizesse assim iria ficar horrível.ultra, valeu, mas não entendo patavida de INNER JOIN. Vou dar uma estudada e tentar usar seu exemplo. Valeu.
Consegui! Nesse link tem uma explicação bem legal sobre INNER JOIN:
Na pressa pq tenho q ir embora:Digamos q seu select é assim:"Select artigo, id_categoria from tabela"faça assim:"Select tabela.artigo as artigo, categoria.nome as categoria from tabela inner join categoria on categoria.id = tabela.id_categoria"espero que entenda, fui !