Select em duas tabelas
14/01/2005
0
Olá pessoal, é o seguinte ...
tenho 2 tabelas:
-Tabela: TB1
campos: TB1_CODIGO e TB1_DESCRICAO
-Tabela: TB2
campo: TB2_CODIGO
... com os dados:
TB1_CODIGO: TB1_DESCRICAO
01 Receita
01.02 Receita de prestacao de serviço
01.02.05 Consultoria
01.02.03 Mão de Obra
TB2_CODIGO:
01.02.05
01.02.03
Agora preciso fazer um select da tabela TB2 que faça me traga 3 colunas:
1ª coluna: checa os dois primeiros valores (left(TB2.TB2_CODIGO,2)) e traga a descrição correspondente com base na tabela TB1 (campo TB1_DESCRICAO)
Ex.: 01.02.05, sendo os 2 primeiros valores, ´01´, irá trazer a descrição ´Receita´
2ª coluna: checa os cinco primeiros valores (left(TB2.TB2_CODIGO,5)) e traga a descrição correspondente com base na tabela TB1 (campo TB1_DESCRICAO)
Ex.: 01.02.05, sendo os 5 primeiros valores, ´01.02´, irá trazer a descrição ´Receita de prestacao de serviço´
3ª coluna: checa todos valores (TB2.TB2_CODIGO) e traga a descrição correspondente com base na tabela TB1 (campo TB1_DESCRICAO)
Ex.: 01.02.05, todos os valores, ´01.02.05´, irá trazer a descrição ´Consultoria´
então o resultado ficaria assim:
DESCRICAO1 DESCRICAO2 DESCRICAO3
Receita Receita de prestacao de serviço Consultoria[color=darkred:4954af836d][/color:4954af836d][color=red:4954af836d][/color:4954af836d]
tenho 2 tabelas:
-Tabela: TB1
campos: TB1_CODIGO e TB1_DESCRICAO
-Tabela: TB2
campo: TB2_CODIGO
... com os dados:
TB1_CODIGO: TB1_DESCRICAO
01 Receita
01.02 Receita de prestacao de serviço
01.02.05 Consultoria
01.02.03 Mão de Obra
TB2_CODIGO:
01.02.05
01.02.03
Agora preciso fazer um select da tabela TB2 que faça me traga 3 colunas:
1ª coluna: checa os dois primeiros valores (left(TB2.TB2_CODIGO,2)) e traga a descrição correspondente com base na tabela TB1 (campo TB1_DESCRICAO)
Ex.: 01.02.05, sendo os 2 primeiros valores, ´01´, irá trazer a descrição ´Receita´
2ª coluna: checa os cinco primeiros valores (left(TB2.TB2_CODIGO,5)) e traga a descrição correspondente com base na tabela TB1 (campo TB1_DESCRICAO)
Ex.: 01.02.05, sendo os 5 primeiros valores, ´01.02´, irá trazer a descrição ´Receita de prestacao de serviço´
3ª coluna: checa todos valores (TB2.TB2_CODIGO) e traga a descrição correspondente com base na tabela TB1 (campo TB1_DESCRICAO)
Ex.: 01.02.05, todos os valores, ´01.02.05´, irá trazer a descrição ´Consultoria´
então o resultado ficaria assim:
DESCRICAO1 DESCRICAO2 DESCRICAO3
Receita Receita de prestacao de serviço Consultoria[color=darkred:4954af836d][/color:4954af836d][color=red:4954af836d][/color:4954af836d]
Rcmsj
Curtir tópico
+ 0
Responder
Posts
04/02/2005
Only
Po cara nao se vai dar certo mas tenta fazer isso
SELECT CAMPO1 = (SELECT TB1_DESCRICAO FROM TB1, TB2 WHERE LEFT(TB2.TB2_CODIGO,2) = TB1_CODIGO)
CAMPO2 = (SELECT TB1_DESCRICAO FROM TB1, TB2 WHERE LEFT(TB2.TB2_CODIGO,5) = TB1_CODIGO)
CAMPO3 = (SELECT TB1_DESCRICAO FROM TB1, TB2 WHERE TB2_CODIGO = TB1_CODIGO
SE DER CERTO AVISA E PASSA PRO PESSOAL
VLW
SELECT CAMPO1 = (SELECT TB1_DESCRICAO FROM TB1, TB2 WHERE LEFT(TB2.TB2_CODIGO,2) = TB1_CODIGO)
CAMPO2 = (SELECT TB1_DESCRICAO FROM TB1, TB2 WHERE LEFT(TB2.TB2_CODIGO,5) = TB1_CODIGO)
CAMPO3 = (SELECT TB1_DESCRICAO FROM TB1, TB2 WHERE TB2_CODIGO = TB1_CODIGO
SE DER CERTO AVISA E PASSA PRO PESSOAL
VLW
Responder
Clique aqui para fazer login e interagir na Comunidade :)