Baixe o app para aproveitar ainda mais
Prévia do material em texto
RESUMO DE INFORMÁTICA 2TP/2011 Aluno Jota Assuntos abordados: – Resto do conteúdo de MySQL (join e outras funções) – Início do estudo de algoritmos 1. MySQL 1.1. Subquery Subqueries são subconsultas, ou seja, consultas dentro de consultas, SELECTs dentro de SELECTs. Por exemplo: existe o número do aluno na tabela notas e na tabela alunos, e eu quero selecionar a nota do aluno que se chama “Jota”. Assim fica a query: SELECT * FROM notas WHERE nr_aluno IN (SELECT nr FROM alunos WHERE nome = “jota”; Como pode ser observado, a consulta diz: SELECIONE TUDO DA TABELA NOTAS ONDE O NÚMERO DO ALUNO ESTÁ EM (SELECIONE O NÚMERO DO ALUNO O QUAL TEM O NOME DE “Jota”). Sabendo interpretar esses comandos, o entendimento das subconsultas será fácil. 1.2. Comando JOIN O join faz basicamente o que uma subconsulta faz, só que de uma forma melhor, otimizada. É usado somente quando há relações entre duas tabelas. Usando o mesmo exemplo acima, mas usando o join, temos: SELECT * FROM alunos JOIN notas ON notas.nr_aluno = alunos.nr AND alunos.nome=”Jota”; Ele vem acompanhado do ON, que serve para especificar onde se dará a relação entre as tabelas. Em outras palavras: SELECIONE TUDO JUNTANDO AS TABELAS NOTAS E ALUNOS ONDE A RELAÇÃO SE DÁ ENTRE NOTAS.NR_ALUNO E ALUNOS.NR E O NOME DO ALUNO É “Jota”. 1.3. Funções de agregação de dados Existem várias funções adicionais para agregação de dados, e estudaremos as seguintes: Group by, having, count, sum, max, min, avg. 1.3.1. Group by Serve para agrupar resultados de acordo com determinada característica. Por exemplo, quero selecionar todo mundo pelo tipo de carro que tem. A query ficaria assim: SELECT * FROM pessoas GROUP BY carro Aí haverá o grupo dos que tem 'Gol', o grupo dos que tem 'Hilux', enfim, agrupará de acordo com o parâmetro que definir. 1.3.2. Having Serve para atribuir uma condição de agrupamento para o GROUP BY. SELECT user, MAX(salary) AS max_salary FROM users GROUP BY user HAVING max_salary>10; No caso, mandou selecionar o usuário, o salário máximo dos usuários e agrupar pelos que têm salário máximo acima de 10. Essa condição de ser acima de 10 é dada pelo having. 1.3.3 Count Serve literalmente para contar o número de resultdos. Por exemplo, quero selecionar o número de alunos do segundo ano: SELECT COUNT(nome) FROM alunos WHERE nro BETWEEN 2000 and 3000; 1.3.4 Max, Min Max serve para selecionar o valor MÁXIMO, e min para selecionar o valor MÍNIMO, simples assim. Quero pegar, por exemplo, o MAIOR SALÁRIO da empresa: SELECT MAX(salario) FROM empregados; A sintaxe do MIN() é idêntica. 1.3.5 Avg Parece com o MAX e com o MIN, mas, obviamente, tem uma função um pouco diferente. AVG vem de average, ou seja, média. Exemplo: quero selecionar a média de salário de uma empresa: SELECT AVG(salario) FROM empregados; 1.3.6 Update Atualizar dados em um registro especificado. Sintaxe: UPDATE tabela2 SET nota=10 WHERE disciplina='inf' and numero='2036'; 1.3.7 Insert Insere um novo registro contendo as informações especificadas. Sintaxe: INSERT INTO tabela(campo1, campo2) VALUES (valor1, valor2); Onde valor1 refere-se a campo1 e valor2 refere-se a campo2. 1.3.8 Delete Deleta um registro Sintaxe: DELETE FROM tabela WHERE … ; Exemplo: quero tirar o aluno 2202 da tabela alunos: DELETE FROM alunos WHERE nr = 2202; 2. Algoritmos 2.1 Definição O que são algoritmos? Algoritmo é a forma que você organiza sua ideia para chegar a um determinado fim, é como uma receita de bolo. Você define os passos necessários para chegar a determinado resultado. Exemplo: Algoritmo para marchar: 1 – Mover a perna esquerda para frente 2 – Mover a mão direita para frente 3 – Recuar a mão direita 4 – Mover a perna esquerda para frente 5 – Mover a mão esquerda para frente 6 – Voltar ao passo 1 Afinal, o computador é apenas uma máquina, e você diz a ele, através dos algoritmos, o que ele deve fazer. Definição da professora: São comandos e regras caracterizadas por uma estrutura que permite definir uma sequência lógica de ações para que posteriormente o computador as processe e possa, com isto, solucionar um problema ou executar uma atividade. 2.2 Etapas para a elaboração de um programa Na resolução de problemas desenvolver-se-á o ciclo: DESCRIÇÃO – EXECUÇÃO – REFLEXÃO – DEPURAÇÃO – DESCRIÇÃO Na descrição, você escreve o programa, desenvolve o algoritmo. Na execução, você coloca o computador para rodar o programa, executá-lo. Na reflexão, você vê se os resultados obtidos na execução estão corretos, se não ocorreu nenhum erro. Caso haja algum erro, vai para a depuração. Na depuração, você verifica onde se encontram os erros e os corrige. É a etapa em que você 'conserta' o programa. Análise Preliminar Entenda o problema com a maior precisão possível, identifique os dados e os resultados desejados. Solução Desenvolva um algoritmo para resolver o problema. Execução Reflexão Depuração Descrição Teste de Qualidade Execute o algoritmo desenvolvido com dados para os quais o resultado seja conhecido. Alteração Se o resultado do teste de qualidade não for satisfatório, altere o algoritmo e submeta-o a um novo teste de qualidade. Produto Final O algoritmo concluído e testado, pronto para ser aplicado. 2.3. Visualg O Visualg será o programa utilizado para o desenvolvimento de algoritmos, que se dará em pseudocódigo. Estrutura básica: algoritmo <nome_do_algoritmo> <declaração_de_variáveis> <subalgoritmos> início <corpo_do_algoritmo> fim Formas de representação de algoritmos: Descrição narrativa Fluxograma Pseudocódigo algoritmo media var n1, n2, media: real inicio Cálculo da média de um aluno Obter as notas da primeira e da segunda prova; Calcular a média aritmética entre as duas; -Se a média for maior ou igual a 7, o aluno foi aprovado, senão ele foi reprovado. leia n1,n2 media:=(n1+n2)/2 se media>=7 entao escreva “aprovado” senao escreva “reprovado” fimse fim Tipos de dados Os algoritmos prevêem quatro tipos de dados: inteiro, real, caracter e lógico (ou booleano). inteiro: define variáveis numéricas do tipo inteiro, ou seja, sem casas decimais. real: define variáveis numéricas do tipo real, ou seja, com casas decimais. caractere: define variáveis do tipo string, ou seja, cadeia de caracteres. logico: define variáveis do tipo booleano, ou seja, com valor VERDADEIRO ou FALSO. Os algoritmos permitem também a declaração de variáveis estruturadas através da palavra chave vetor, como será explicado posteriormente. Os nomes das variáveis devem começar por uma letra e depois conter letras, números ou underline (no VisuAlg até um limite de 30 caracteres). As variáveis podem ser simples ou estruturadas (vetores de uma ou duas dimensões). Não pode haver duas variáveis com o mesmo nome. Atribuição de variáveis A atribuição de variáveis se dá da seguinte forma: variavel < - valor ou variavel := valor Exemplo: quero atribuir à variável X o valor 25 x < - 25 ou x := 25 Para colocar frases, usa-se aspas: x < - “JOTA” Para colocar valores lógicos, não são usadas as aspas: x := VERDADEIROPrimeiros comandos escreva() : Escreve algo na tela, imprime algo para o usuário ler. escreval() : Faz a mesma coisa do escreva(), a diferença é que adiciona uma quebra de linha no final da linha. Exemplo: escreva(“a”) escreva(“b”) Isso irá retornar ab Já com escreval... escreval(“a”) escreval(“b”) Isso irá retornar a b Comando leia() O comando leia serve para receber valores que o usuário irá colocar até apertar enter: Exemplo: leia(a) Quando o usuário escrever, tudo será armazenado na variável a e será interrompido o armazenamento quando a tecla enter for apertada pelo usuário. E isso é tudo até onde ela deu. Até mais e bons estudos!
Compartilhar