USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Como fazer Consulta SQL
Zoltran
SÃO PAULO
SP - BRASIL
Postada em 12/12/2005 00:05 hs            
Olá pessoal, preciso fazer uma consulta SQL onde o valor de um alguns registros começam com "X", sendo que dependendo do dia trabalha uma escala diferente e esse "X"  deve ser substituido pela escala do dia e comparado em outra tabela para buscar o nome do cara. (Por exemplo, hoje trabalha a Escala "A"), na tbl_cho o "X" deve ser substituido pela letra "A" e buscar o funcionario correspondente na tbl_cadastro.   Será que alguém sabe?
 
tbl_cadastro
Func  -    Escala                       
Mane  -   A01                      
Jose   -   B03
Fulano -   D07
Ciclano -  A04
Silva    -  SM1
Joaquim - E07
 
tbl_cho    (essa tabela é referencia para selecionar os funcionarios na sequencia em que aparece.)
seq_entrada
X01
X02
SM1
SM2
X03
SM4
X04
X05
SM5
SM6
X06
X07
X08
SM7
X09
X10
X11
X12
....
 
MTurno="M"
TTarde="T"
NTurno="N"
StrSql = "Select * from tbl_cadastro, tbl_cho"
StrSql = StrSql & " where (left(ord_entrada, 1)) = " & "'" & MTurno & "'"
StrSql = StrSql & " and tbl_cadastro.escala = tbl_cho.seq_entrada"     '???????
StrSql = StrSql & " order by ord_entrada"
     
kerplunk
Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 12/12/2005 06:20 hs         
Você pode usar a função Mid(str, x, x) que a maioria dos bd's tem e funcionam igualzinho ao mid do VB. Algo do tipo:
Select Concat('A', mid(campo, 2,3)) from tbl_cho
     
Zoltran
SÃO PAULO
SP - BRASIL
Postada em 12/12/2005 14:51 hs            
Kerplunk, não vai funcionar, pois não é só concatenar e sim verificar antes os registros se o inicial for "X", substituir por uma letra de escala, ok!
     
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 13/12/2005 07:25 hs            
Não sei se resolve o seu problema mas segue exemplo da sql que montei:
 
SELECT TbCadastro.Funcionario, TbCadastro.Escala
FROM TbCadastro, tbl_cho
WHERE (((Right([TbCadastro]![Escala],2))=Right([tbl_cho]![Escala],2)));

dsmn
     
Zoltran
SÃO PAULO
SP - BRASIL
Postada em 13/12/2005 15:44 hs            
valeu a intenção Daniel, mas ainda não resolveu, não posso pegar da direita para esquerda pois tem registro que passa de 4 casas, ai não funfa.
O que eu preciso é substituir o "X" da tbl_cho por uma letra de escala do dia, por exemplo A, B, C, D ou E, ai sim buscar na tbl_cadastro.escala os caras que atendem este criterio. Talvez eu esteja montando errado a estrutura do BD.
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página