Tenho uma tabela com 10 campos, mas o usuário não insere todos ,apenas alguns, e em quantidades e campos diferentes…
Preciso fazer uma seleção onde apareça apenas os valores não nulos…de determinada chave primaria…
tipo : SELECT * FROM aluno WHERE matricula=1
mas…não sei como fazer para aparecer apenas os valores que não sejam nulos…
se vc sabe quais valores estao preenchidos vc pode fazer assim:
SELECT`nome`FROMalunowhereid=1;
so vai retornar o none do aluno com id 1
Mara1
O problema é que eu não sei quais campos estão nulos ou não… isso depende das necessidades dos usuários…eu preciso consultar pela matricula, que no caso é a chave primária…
ex:
matricula / aluno / escola / turma
001 /A /B /C
002 /null /D /null
003 /E /null /F
Preciso consultar o aluno pela matricula apenas os campos não nulos…
ex: consultar o aluno de matricula 002
matricula/escola
002 /D
W
windsofhell
Mara*:
O problema é que eu não sei quais campos estão nulos ou não… isso depende das necessidades dos usuários…eu preciso consultar pela matricula, que no caso é a chave primária…
ex:
matricula / aluno / escola / turma
001 /A /B /C
002 /null /D /null
003 /E /null /F
Preciso consultar o aluno pela matricula apenas os campos não nulos…
ex: consultar o aluno de matricula 002
matricula/escola
002 /D
Nao entendi. Vc quer consultar por exemplo, aluno com matricula 002 onde os campos aluno, escola e turma nao sao nulo???
Se for isso vc vai ter que colocar um AND para cada campo, tipo:
De qualquer forma, melhor vc re-modelar o seu banco, faz sentido vc ter um registro no banco onde consta somente um numero de matricula??
Pra mim, parece estranho.
//Daniel
yhhik
ae é complicado…
não sei se tem como…
acho que vc vai ter que pegar todos os dados no select e na aplicação verificar quais dados estao nulos para depois mostra-los.
Mara1
Bom … é isso msm que eu preciso yhhik … mas não sei como fazer isso.
não dá pr verificar usando
select * from alunos where matricula = ‘002’ and escola is not null and turma is not null and turma is not null;
pois não sei quais campos tem valores nulos
e na aplicação…a matricula é encontrada pelo usuario…
ps: isso é um exemplo, na minha tabela tem mais campos.
yhhik
isso vai te dar um trabalho muito grande na view.
tendo em vista esse contexto eu faria assim
seu select vai retornar um aluno correto?
vamo supor que vc vai preencher um textfield com a turma e esse campo nao foi utilizado.
em alguns pode ser aluno e escola, outros escola e turma…vai depender de qual aluno o usuario quer consultar…e o que esse aluno tem não nulo.
não consigo separar os campos nulos dos não nulos’
yhhik
windsofhell:
Mara*:
O problema é que eu não sei quais campos estão nulos ou não… isso depende das necessidades dos usuários…eu preciso consultar pela matricula, que no caso é a chave primária…
ex:
matricula / aluno / escola / turma
001 /A /B /C
002 /null /D /null
003 /E /null /F
Preciso consultar o aluno pela matricula apenas os campos não nulos…
ex: consultar o aluno de matricula 002
matricula/escola
002 /D
Nao entendi. Vc quer consultar por exemplo, aluno com matricula 002 onde os campos aluno, escola e turma nao sao nulo???
Se for isso vc vai ter que colocar um AND para cada campo, tipo:
De qualquer forma, melhor vc re-modelar o seu banco, faz sentido vc ter um registro no banco onde consta somente um numero de matricula??
Pra mim, parece estranho.
//Daniel
o conselho do colega acima é o melhor no seu caso.
remodele seu banco
faça uma tabela aluno uma tabela escola e uma tabela e uma tabela turma.
assim ficará mais fácil.
Mara1
É…vou tentar…mando resposta assim que der certo…obrigado pelas dicas…