Ir ao conteúdo
  • Cadastre-se

Rafaela Bennett

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

posts postados por Rafaela Bennett

  1. http://sqlfiddle.com/#!17/00036/31

     

    -- primeiro passo (selecionar os ids e os totais de locações da tabela rental)

    select
    	r.rental_id,
    	COUNT(*)
    from rental r
    	join customer c
    		on r.rental_id = c.rental_id
    group by r.rental_id;


    -- segundo passo (selecionar o cliente com o maior numero de locacoes)

    select a.customer_id from (
    select
    	c.customer_id,
    	COUNT(*)
    from rental r
    	join customer c
    		on r.rental_id = c.rental_id
    group by c.customer_id
    ORDER BY count DESC
    LIMIT 1) a;

     

    -- terceiro passo (juntar tudo)

    select
    	r.rental_id AS "rental",
    	COUNT(*) AS "qt"
    from rental r
    	join customer c
    		on r.rental_id = c.rental_id
    where r.customer_id = (select a.customer_id from ( select c.customer_id, COUNT(*) from rental r join customer c on r.rental_id = c.rental_id group by c.customer_id ORDER BY count DESC LIMIT 1) a)
    group by r.rental_id

     

    • Curtir 1
  2. Oi gente

     

    Me desculpem mas hoje preciso fazer uma pergunta bem boba. O professor de redes passou a seguinte tarefa: Colete uma sequência de pacotes e analise o protocolo IP

     

    Mas eu não sei como se faz isso... Coletar uma sequencia de pacotes significa "fazer um download" ? Como é que eu analisaria o protocolo IP disso ? 

     

    A pergunta é bem boba mas eu realmente não entendi, qualquer ajuda é bem vinda.

     

    Obrigada.

     

    (P.S. Depois ele nos manda fazer isso, em cima dos protocolos coletados: Quais valores foram encontrados no cabeçalho do protocolo IP? Os pacotes IP encontrados possuem campo opcional?)

    (Estava esperando que a partir do momento que eu conseguisse coletar a sequencia de pacotes e analisar o protocolo IP eu conseguiria interpretar as outras perguntas...)

  3. Primeiro.... se tu quer comparar os numeros repetidos tu precisa que os numeros sejam inteiros e não strings certo. Então, primeiro, mantém o teu String num para receber a entrada e o teu int n1 para transformar essa string em um número depois. Coloquei (declarei instanciei e iniciei) um vetor de numeros de 4 posições também: por que ? por que antes, toda vez que tu passava pelo "for", tu sobrescrevia a tua string num e perdia as informações que foram colocadas antes. Se tu quer manter essas informações tu vai precisar do array para guardar elas em cada posicao.

    String num;
    int n1;
    int[] numeros = {0,0,0,0};

    Segundo... Ok. Resolvi um problema e te dei outro: como é que tu vai fazer ler.next() e jogar essa entrada para dentro de uma posicao do teu vetor de inteiros, se o java diz que tu só pode jogar um ler.next() para dentro de um string? Ok. Vou te mostrar como o Integer.parseInt funciona:

    for ( int i=0; i<4; i++) {  
                System.out.print("Ingresse um numero: ");
                num=ler.next(); // até aqui igual como estava antes
    
      			try {
        			n1 = Integer.parseInt(num); /* nessa linha eu faço o seguinte:
    pego num (String) mando pro método "Integer.parseInt" e o método manda de volta
    pra mim um inteiro, e eu jogo esse inteiro pra dentro de n1 (int). Legal ! Mas
    isso sempre funciona ? E se alguém escrever "abóbora" e essa entrada for para num,
    o método vai me devolver um número? pois é... abóbora não é um número. nem tudo é
    perfeito. então, toda vez que alguém escrever algo que não seja um número o método
    vai bugar. Só que ao invés de deixar o método bugar eu sou mais esperta: vou mandar
    ele só imprimir a mensagem de erro a seguir e ignorar o erro, e continuar rodando. */
        		} catch (NumberFormatException error) { /* o catch "pega o erro" antes
    que o método bugue, e ao invés de deixar o método bugar e ferrar com o meu programinha,
    eu só imprimo a minha mensagem de erro e o programa segue*/
        			System.out.println("Erro! A entrada deve ser um NÚMERO: como 1.");
        		}
    /* certo. agora que eu já consegui fazer o aboboromaníaco escrever um número eu coloco
    esse número dentro do meu vetor de inteiros, para não perder ele numa sobrescrição.*/
      			numeros[i] = n1;
    }

    Terceiro... agora é fácil. é só comparar o numero de cada posicao do vetor com o numero de todas as posições do vetor e ir guardando os que estão repetidos (em uma variavel nova) e quantas vezes se repetiram. Dica: use dois "for"s. Depois me mostra como ficou, se tu conseguiu ou não, que eu te ajudo de novo.

    • Curtir 2

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!