| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/06/2010 10:44:11
|
fabio.aurelio
JavaTeenager
Membro desde: 04/11/2009 15:16:03
Mensagens: 154
Offline
|
Galera,
Tem umprocesso aqui que ate parece simples, mas esta me retornando "erro" direto..
Tenho um jsf que me da uma lista de registros e a opcao para vizualizar qual eu escolher, conforme abaixo
Após eu escolher ele me retorna uma pagina com o registro que eu escolho..Ate ai beleza...
Problema começa quando eu tento pegar os dados do registro atual para montar um relatorio...
Ele nao monta com o registro atual escolhido, monta com o ultimo registro ...
Nao adianta eu escolhor por exemplo o numero 134, pois ele mostrara o ultimo..n. 450 por exemplo...
a linha do select esta assim:
Esta linha pega o ultimo de fato, mas quando tiro o "ORDER BY"...ele retorna null o registro
Qual erro que estou cometendo ?
obrigado,
This message was edited 1 time. Last update was at 14/06/2010 11:26:53
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/07/2010 11:42:59
|
FacaNaCaveira
JavaBaby
![[Avatar]](/images/avatar/4e117f9c5a071d1268e4a4c9a6c363ac.jpg)
Membro desde: 09/07/2010 17:19:44
Mensagens: 85
Localização: Rio de Janeiro
Offline
|
Fala ai fabio.aurelio
Respondendo a sua 1ª pergunta a sonsulta so retorna o ultimo registro por causa de dois itens nesse SQL
ResultSet rs = stmt.executeQuery("Select p.nome, p.data, c.codigo, p.id, p.id_cliente, c.nome FROM cliente c INNER JOIN produtovenda p ON p.id_cliente = c.codigo ORDER BY p.data_fim DESC LIMIT 1");
no caso vc ordenou pela data fim de forma decrescente, entao posso prezumir que a maior data_fim é do ultimo registro (o de numero 450) e a condição LIMIT 1, vc solicita que seja retornada apenas 1 registro. Se vc colocasse por exemplo LIMIT 1,30 ele iria listar de 1 ate 30 de forma descrescente pela data_fim
Quando vc diz que quando vc tira o ORDER BY ele retorna NULL o registro, acredito que ele deva retornar algum erro, pois o DESC e o LIMIT só vejo eles sendo usado em conjunto com o ORDER BY.
Abração
Max
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/07/2010 12:03:26
|
markin1
JavaEvangelist
Membro desde: 07/12/2008 20:58:59
Mensagens: 494
Localização: São Paulo
Offline
|
LIMIT pode ser usado separadamente de order by, mas o DESC tem que ser usado em conjunto.
Outra coisa, onde é que está o seu where nesse sql? do jeito que está ai sempre vai retornar o último mesmo.
|
Quem é o juíz? |
|
|
 |
|
|
|
|