SELECT

NICOLLAS2 10/09/2010 22:18:00
#352686
Galera, como deve fazer este select?

Select * from TABELA where COD_FORNECEDOR = 2 and 4 and 7

sendo que posso ter de 1 a varios codigos para filtrar, depende do que o usuario vai querer.
MOREIRA 10/09/2010 22:27:00
#352687
qual o banco de dados..
NICOLLAS2 10/09/2010 22:40:32
#352688
access
MARCELOFAZAN 10/09/2010 23:25:55
#352691
se for pra usar varios textes
eu chamo isso de concatenar tambem queria aprender .

No Vb ainda nao consigo aplicar essa teoria mais seria algo a ideia em escopo , em comandos nao sei
Dim aa
Dim ab
Dim ac
Dim concatena

concatena = text1 >= date and text2 <= date

concatena = concatena + text3 = aa
concatena = concatena + text4 = ab
concatena = concatena + text5 = ac

select * from tabela where Macroconcatena



queria aplicar essa teoria é a mesma que a sua acho
Quem saber mais ...... pode sintaxear

MOREIRA 10/09/2010 23:39:27
#352693
amigo, veja se te ajuda..

Sql = [Ô]Select * From Tbl_Comissao Where Dt_PgToCrt >=[ô][Ô] & Format(Frm_Opcoes_Relat.TxtDt_Inicial.Text, [Ô]yyyy/mm/dd[Ô]) & [Ô][ô]And Dt_PgToCrt <=[ô][Ô] & Format(Frm_Opcoes_Relat.TxtDt_Final.Text, [Ô]yyyy/mm/dd[Ô]) & [Ô][ô]And Status =[ô]Pago[ô]Order By Cliente Asc[Ô]

nesse caso, estou usando o db mysql..

agora é com vc...

observe que estou usando 3 condicionais... data inicial, data final e o status, ordenando de A a Z
NICOLLAS2 11/09/2010 00:01:29
#352695
Citação:

:
amigo, veja se te ajuda..

Sql = [Ô]Select * From Tbl_Comissao Where Dt_PgToCrt >=[ô][Ô] & Format(Frm_Opcoes_Relat.TxtDt_Inicial.Text, [Ô]yyyy/mm/dd[Ô]) & [Ô][ô]And Dt_PgToCrt <=[ô][Ô] & Format(Frm_Opcoes_Relat.TxtDt_Final.Text, [Ô]yyyy/mm/dd[Ô]) & [Ô][ô]And Status =[ô]Pago[ô]Order By Cliente Asc[Ô]

nesse caso, estou usando o db mysql..

agora é com vc...

observe que estou usando 3 condicionais... data inicial, data final e o status, ordenando de A a Z



mas neste caso voce esta pegando filtro de 3 colunas

o que eu preciso eh trazer resultados diferentes de uma unica coluna, o problema é que as vezes pode ser 1 ou muitos tipos
Exemplo:
tenho no banco assim

COD_FORN DATA
2 25/08/10
3 25/08/10
1 26/08/10
4 27/08/10
2 29/08/10
4 29/08/10

dai quero filtrar os fornecedores 2 e 4
ou entao o 1, 2 e 4
ou o 3 e 4
ou so o 2
mas pense isso numa tabela com 100 fornecedores....
NICOLLAS2 11/09/2010 00:16:53
#352699
olhem o meu problema na tela, é a opcao do listbox, onde ou posso selecionar os fornecedores que quero trazer, 1, alguns ou todos.
MARCELOFAZAN 11/09/2010 00:36:51
#352700
ai voce esta fazendo N - N
acho que precisara fazer uma estrutura de repeticao por estar selecionando varios fornecedores de uma vez para varias contas
e ainda um relatorio que seja 2 detalhes
por causa de usar varios checks na consulta
MSMJUDAS 11/09/2010 09:01:53
#352704
Simples:

Select * from TABELA
where COD_FORNECEDOR = 2
or COD_FORNECEDOR = 4
or COD_FORNECEDOR = 7
FRACELO 11/09/2010 09:49:00
#352706
Resposta escolhida
Dependendo do banco e a variante SQL você pode usar IN (3,5,7)
ficaria mais ou menos assim:
Select * from Fornecedores where cod_forncedor IN (3,5,8,12)
GERARDA 11/09/2010 11:21:18
#352715
eu faria da seguinte maneira

dim minhaconsulta as string [ô]declaro uma string que sera a consulta
dim contano as double [ô] declaro um numero para girar a lista


[ô]option todas selecionado

minhaconsulta=[Ô]Select * from tabela [Ô]

where data> #[Ô] & DTP1.Value & [Ô]# AND data< #[Ô] & DTP2.Value & [Ô]# [Ô]

for contano=0 to listadefornecedores.count-1
if list.checked=true then minhaconsulta=minhaconsulta & [Ô] and cod_fornecedor = [ô]list1.list(contano)[ô] [Ô]
next


Set banco = bancodedados.OpenRecordset(minhaconsulta)

não testei
pode ate estar com erro
mas é mais ou menos por ai
Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas