Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

diegolauro

Selecionando um range de colunas

Recommended Posts

Oi pessoal,Estou precisando de uma força, tenho uma tabela com várias colunas do tipo (questao1, questao2, questao3, questao4 ...)No meu select eu precisaria fazer assim:SELECT * FROM Tabela WHERE questao1 = "" AND questao2 = "" AND questao3 = "" ...Têm como eu selecionar esse conjunto de colunas apontando um range de campos?Ex: SELECT * FROM Tabela WHERE COLUMN 1 TO 100 = ""Já pesquisei em vários lugares e ainda num achei nada parecidoGrato pela Atenção

Compartilhar este post


Link para o post
Compartilhar em outros sites

Camarada,

 

Por colunas desconheço nunca vi. Isso não quer dizer q não tenha como fazê-lo. Pode ser que alguém do forum dê alguma idéia.

 

 

Na verdade você esta com preguiça de escrever todo o WHERE, não é isso?

 

Bom segue um exemplo de como simplificar a expressão:

DECLARE @TMP TABLE (   COD INT, 							 QO1 VARCHAR(20),							 QO2 VARCHAR(20),							 QO3 VARCHAR(20),							 QO4 VARCHAR(20),							 QO5 VARCHAR(20),							 QO6 VARCHAR(20),							 QO7 VARCHAR(20),							 QO8 VARCHAR(20),							 QO9 VARCHAR(20),							 Q10 VARCHAR(20))INSERT INTO @TMP (COD,QO1,QO2,QO3,QO4,QO5,QO6,QO7,QO8,QO9,Q10) VALUES				 (1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL)INSERT INTO @TMP (COD,QO1,QO2,QO3,QO4,QO5,QO6,QO7,QO8,QO9,Q10) VALUES				 (1,'A', '','','B','','','C','','','')INSERT INTO @TMP (COD,QO1,QO2,QO3,QO4,QO5,QO6,QO7,QO8,QO9,Q10) VALUES				 (1,'A', 'B','C','D','E','F','G','H','I','J')SELECT   * FROM	 @TMPWHERE		(QO1 + QO2 + QO3 + QO4 + QO5 + QO6 + QO7 + QO8 + QO9 + Q10)  IS NULLSELECT   * FROM	 @TMPWHERE		(QO1 + QO2 + QO3 + QO4 + QO5 + QO6 + QO7 + QO8 + QO9 + Q10)  IS NOT NULL

 

Vamos aguardar.

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala mestre eriva_br

 

Na paz?!

 

Bom pense em algo tipo pegar o nome da colunas e gerar o where mas acho q dá mais trabalho do que criar isto no QA e modificar.

 

Mas fica a dica!!

 

t+

 

faz um, WHILE e gera um SELECT dinamico pra executar com o EXEC

Compartilhar este post


Link para o post
Compartilhar em outros sites

hahaaha... na verdade nao é prequiça, não fica melhor um codigo mais curto?Vou ter que fazer isso num menu inteiro e em varias tabelas com varios campos.. tenho tabelas com mais de 40 campos... por isso estava procurando um codigo mais enxuto.vou estudar o código aqui... obrigado pela dica

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ixi, num deu certo, acho q foi por causa do Data TypeMas mesmo assim, eu tentei fazer separado mas ele me traz coisa errada. O que eu estou fazendo de errado?SELECT * FROM como_voce_e WHERE cd_cadastro = " &session("usuario")& " AND cd_servico="&session("servico") & " AND questao1 is null AND questao2 is null AND questao3 is null AND questao4 is null AND questao5 is null AND questao6 is null AND questao7 is null AND questao8 is null AND questao9 is null AND questao10 is null AND questao11 is null AND questao12 is null AND questao13 is null AND questao14 is null AND questao15 is null AND arquivo is nullSELECT * FROM como_voce_e WHERE cd_cadastro = " &session("usuario")& " AND cd_servico="&session("servico") & " AND questao1 is not null AND questao2 is not null AND questao3 is not null AND questao4 is not null AND questao5 is not null AND questao6 is not null AND questao7 is not null AND questao8 is not null AND questao9 is not null AND questao10 is not null AND questao11 is not null AND questao12 is not null AND questao13 is not null AND questao14 is not null AND questao15 is not null

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.