Ir para o conteúdo
rt4ever

JSP + SQL - Melhor solução

Mensagens Recomendadas

rt4ever    0
rt4ever

Boa Tarde pessoal,

Gostaria de saber a vossa opinião/experiência sobre qual o melhor método, biblioteca ou sugestão para aceder e listar uma tabela com cerca de 1 milhão de registos, numa base de dados SQL, usando JSP.

Uma das prioridades, e como é para ser acedido através da Internet, é o menor tempo possível de carregamento dos dados.

De referir ainda que os dados são actualizados de 5 em 5 minutos, pelo que, todos os acessos à pagina .jsp deveram carregar directamente da base de dados, para que estes sejam sempre os mais recentes.

Fico a aguardar o vosso feedback.

Obrigado desde já, Abraços.      :wallbash:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bruno1234    20
bruno1234

Mas queres q esse milhão de registos apareçam na página?

Isso parece-me exagerado, ninguém vai analisar um milhão de registos ao mesmo tempo.

Quanto muito utiliza critérios de pesquisa ou paginação.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
rt4ever    0
rt4ever

Não é para apresentar o milhão de registos, mas será necessário analisar cada linha do resultset, para comparar valores e depois só são apresentados alguns desses valores. Mas a "analise" inicial terá que ser sempre da tabela toda...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
rt4ever    0
rt4ever

Sendo assim preciso de saber se é possível, fazer 2 count's na mesma query do mesmo campo, mas com condições diferentes, se sim um exemplo sff.

Podes ajudar-me com isto? Ou é melhor colocar essa dúvida na secção de base de dados?

Obrigado.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
rt4ever    0
rt4ever

Boas,

o exemplo é este:

SELECT [valor1], [valor2], count([valor3]) FROM [Tabela1] AS b where [string1]!='palavra' group by [valor1], [valor2] order by  [valor1], [valor2]

SELECT [valor1], [valor2], count([valor3]) FROM [Tabela1] group by [valor1], [valor2] order by  [valor1], [valor2]

preciso juntar o resultado destes dois selects, se repararem o único valor que altera é o do count([valor3]), devido a esta condição [string1]!='palavra' na primeira query.

O resultado final pretendido é [valor1], [valor2], count([valor3])1, count([valor3])2

Sendo count([valor3])1 o valor do count da primeira query e count([valor3])2 o valor do count na segunda query.

Acho que está minimamente perceptível. Vejam la se conseguem ajudar.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bruno1234    20
bruno1234

Era mais facil de perceber se mostrasses um ex em tabela dos resultados q tens, e outra tabela do q queres.

Ex:

Tenho:

A          B        C

a          10        10

b          10        10

e quero ter como resultado:

A            B        C

a            10        10

Assim é mais facil para te ajudar na query.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
yoda    139
yoda

Boas,

Podes usar o DISTINCT para obteres numa query os resultados que queres e no fim comparar.

Exemplo :

SELECT customer_name, COUNT(DISTINCT city) as "Distinct Cities"
FROM customers
GROUP BY customer_name;

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade