Treze
|
SÃO VICENTE SP - BRASIL
|
|
|
|
|
Postada em 22/02/2008 16:45 hs
SELECT MONITORES.*,BAIRROS.NOMEBAIRRO FROM BAIRROS INNER JOIN MONITORES ON BAIRROS.CODBAIRRO = MONITORES.CODBAIRRO Essa seria a SQL. sqlmonit = "SELECT MONITORES.*,BAIRROS.NOMEBAIRRO FROM BAIRROS INNER JOIN MONITORES ON BAIRROS.CODBAIRRO = MONITORES.CODBAIRRO Order By MONITORES.nomemonit" Set rsmonit = db.OpenRecordset(sqlmonit)
Do Until rsmonit.EOF Print #1, Tab(0); rsmonit("nomemonit"); Print #1, Tab(48); rsmonit("enderecomonit"); Tab(101); rsmonit("Nomebairro") rsmonit.MoveNext Loop
Pronto, este é o codigo que deve funcionar, usando o JOIN em vez de vc fazer 2 laços para fazer o filtro, vc faz somente 1, todo processamento é feito pelo banco. Aqui no site tem algumas apostilas sobre a linguagem SQL, dê uma olhada. Roberto
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 22/02/2008 17:08 hs
Roberto Uma duvida minha agora sqlmonit = "SELECT * FROM monitores INNER JOIN bairros ON monitores.codbairro = bairro.codbairro Order By bairro.nomebairro"
dessa forma não funcionaria? ou seja pra consulta dele que deseja pesquisar por bairro.
|
TÓPICO EDITADO
|
|
|
|
|
Postada em 22/02/2008 17:24 hs
Não, vc tem que informar de qual tabela vc quer as informações. SELECT MONITORES.*,BAIRROS.NOMEBAIRRO Da tabela MONITORES, resultado todos os campos tabela BAIRROS, somente um campo, sendo que trazer tudo desta tabela é redundante por que a tabela MONITORES tem o mesmo campo e foi usando no JOIN. E muitas vezes usando o JOIN e o GROUP BY, vc não pode usar o *. Roberto
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 22/02/2008 17:41 hs
|
|
|