Pular para o conteúdo principal

Postagens

Mostrando postagens com o rótulo funções

JS - Escopo de variáveis e funções

Escopo de variáveis diz respeito aos locais onde uma variável pode ser acessada, é muito importante ter isso em mente pois uma abordagem errada na definição pode resultar em variáveis permanentes na memória, consumindo recurso computacional, valores sendo substituídos de maneira não controlada seja com limpezas ou mesmo substituições. Tipos Basicamente temos como tipos de escopo: Global - quando temos uma variável fora de função, onde o que for criado dessa forma pode ser acessado em qualquer lugar; var testeGlobal = 1; (variável global com o valor 1) function alterarValorGlobal() { testeGlobal = 2; }; (função que altera um valor que não pertence a seu escopo) Local - quando temos uma variável em uma função, o que é criado dessa forma só pode ser usado dentro da função. Essa é a forma recomendada, uma vez que as variáveis são mantidas em memória apenas enquanto a função estiver em execução, eliminando os riscos de substituição de valores ou permanência apos o u

O que devemos conhecer sobre SQL/Oracle Parte 8: Apresentando dados de varias tabelas

Escrevendo comandos SELECT que acessam dados de mais de uma tabela  As junções são utilizadas para mesclar registros de uma ou mais tabelas em um único resultado. Temos duas grandes categorias para a criação das junções: Inner joins: conectam registros em duas ou mais tabelas se, e somente se, existirem registros iguais em todas as tabelas relacionadas (a cláusula INNER é opcional): SELECT F.NOME, D.DEPARTAMENTO FROM FUNCIONARIOS F INNER JOIN DEPARTAMENTOS D ON F.DEP = D.DEP; Acima duas tabelas unidas pela condição de igualdade DEP, onde serão apresentados os funcionários que pertencem a um departamento. Outer joins: conectam registros em duas ou mais tabelas de maneira inclusiva, se existirem  dados em uma tabela que não tenha valores correspondentes em outra, esses registros não correspondentes serão incluídos no resultado (a cláusula OUTER é opcional):  SELECT F.NOME, D.DEPARTAMENTO FROM FUNCIONARIOS F LEFT OUTER JOIN DEPARTAMENTOS D ON F.DEP = D

O que devemos conhecer sobre SQL/Oracle Parte 7: Apresentando dados agregados utilizando funções de grupo

Identificando as funções de grupo disponíveis Funções de grupo, ou agregadas, retornam um valor para zero ou mais registros encontrados. São utilizados em comandos SELECT, buscam um grupo de registros retornando um valor para esse grupo. Trabalham com diferentes tipos de dados, mas são as funções agregadas numéricas as mais utilizadas. É importante ter em mente que as funções agregadas devem ser tratadas de maneira separada das funções escalares (de uma única linha), pois enquanto uma trata conjuntos de registros à outra trabalha sobre cada registro retornado. • Funções de grupo são conhecidas como agregadas ou multilinha; • Funções de grupo retornam um valor para cada conjunto de registros (de zero ou mais registros); • Funções de grupo determinam valores máximos, mínimos, media entre outros; • Funções de grupo podem determinar o rank em um grupo de registros; Descrevendo o uso das funções de grupo Funções de grupo podem ser usadas nas clausulas SE

O que devemos conhecer sobre SQL/Oracle Parte 6: Usando funções de linha única (single-row) para customizar a saída de dados

Descrevendo os vários tipos de funções disponíveis em SQL As funções de linha única podem ou não receber dados adicionais, parâmetros, realizar um determinado processamento e em seguida devolver um valor. Elas possuem esse nome por serem processadas a cada registro recuperado de uma consulta, e do mesmo modo retornar um resultado para cada registro. Existem basicamente dois grupos dessas funções, as “built-in” que são parte integrante do Oracle e as “user-defined”, desenvolvidas pelos usuários. Quanto a funções de linha única podemos dizer: Funções SQL aceitam um ou mais parâmetros de entrada. Alguns não recebem nenhum; Cada função retorna um único valor, nem mais nem menos; Funções SQL executam tarefas de vários tipos; Funções podem ser incluídas em qualquer lugar de uma expressão SQL, desde que as regras dos tipos de dados sejam respeitadas; Funções podem ser incluídas na clausula WHERE do SELECT, UPDATE e DELETE; Funções podem ser incluídas nas listas de colunas do S

O que devemos conhecer sobre SQL/Oracle Parte 5: Restringindo e ordenando dados

Limitando registros recuperados por uma consulta Na grande maioria dos casos apenas listar as colunas desejadas de certa tabela não é o suficiente, é necessário restringir o resultado de acordo com regras para que esse resultado possa ter algum significado, isso é alcançado pela cláusula WHERE. O WHERE não é obrigatório, mas quando usado no comando SELECT deve vir depois da cláusula FROM. Ele sempre testa todos os registros recuperados pela consulta, retornando aqueles que o satisfizerem. Para realizar as comparações da cláusula WHERE temos o operador de igualdade “=”, maior que “>”, maior ou igual “>=”, menor que “<”, menor ou igual “<=”, diferente “<>“, “!=” ou “^=”, se pertence “IN” e se contém uma parte especifica “LIKE”. Comparações com números são logicas, onde números menores são menores que números maiores. Os caracteres respeitam a ordem do alfabeto, onde “A” é menor que “Z”, e “Z” é menor que “a” (letras maiúsculas são sempre menores), além disso,

O que devemos conhecer sobre SQL/Oracle Parte 4: Recuperando dados usando o comando SELECT

Executando um comando básico de SELECT O comando SELECT é utilizado para analisar, transformar e apresentar dados gravados no banco veja a sintaxe: SELECT nome_coluna, expressão, FROM nome_da_tabela; É possível listar na clausula SELECT colunas disponíveis nas tabelas da clausula FROM, também é possível utilizar funções, realizar cálculos, dentre outras coisas que serão vistas a seguir. Sobre o comando SELECT é importante ter em mente: Um SELECT deve possuir ao menos uma lista a ser selecionada e a clausula FROM; Colunas na lista SELECT devem pertencer a uma das tabelas da clausula FROM; Listando as capacidades do comando SELECT O comando SELECT é muito poderoso, com ele podemos selecionar colunas de tabelas, formatar seus valores e até utiliza-los para cálculos. Quando a questão são os cálculos e importante ter em mente a precedência de operadores, onde temos com prioridade máxima os parênteses, seguido dos operadores de divisão e multiplicação e por fim

O que devemos conhecer sobre SQL/Oracle Parte 3: Manipulando dados

Descrevendo cada comando de manipulação e dados (DML) Comandos DML (Data manipulation language) são utilizados para inserir, atualizar e remover registros do banco. São cinco os principais comandos DML: INSERT, UPDATE, DELETE, SELECT e MERGE: INSERT adiciona registros na tabela; UPDATE altera registros existentes na tabela; DELETE remove registros existentes na tabela; SELECT mostra dados da tabela; MERGE será visto em breve; Inserindo registros na tabela O comando para inserir registros é o INSERT, veja a sinaxe: INSERT INTO nome_da_tabela(coluna_1, coluna_2) VALUES(valor_1, valor_2); No comando acima duas colunas e dois valores são listados, essa relação sempre deve ser igual, não importa a ordem em que são listadas. É possível omitir colunas durante o INSERT, desde que as restrições da tabela sejam respeitadas. Também é possível inserir sem informar nenhuma coluna, desse modo é obrigatório informar valores para todas as colunas da tabela, na ordem em que

O que devemos conhecer sobre SQL/Oracle Parte 1: Introdução ao SQL

  Série de postagens sobre SQL A algum tempo atrás, não me lembro se 2009 ou 2010, comecei a escrever uma serie de artigos contendo pontos importantes sobre banco de dados, mais precisamente Oracle. Porem um descuido e uma formatação apressada fez com que eu perdesse esses artigos. Porem recentemente, buscando uma declaração de imposto de renda, reencontrei esses artigos, a maior parte ainda esta sem formatação e outra por terminar, mas o fato de ter encontrado me deu vontade de finalizar e publicar tudo, ao todo imaginei cerca dezoito postagens abordando os mais variados tópicos.  Começaremos hoje com um pouco de historia e um rápido resumo, espero que gostem desse e dos próximos. Banco de dados relacionais e Dr. E. F. Codd Antes do advento dos bancos de dados relacionais, cada desenvolvedor formulava seus próprios meios de armazenar, alterar e recuperar dados, dessa forma cada aplicação tratava a informação de

Funções de data Oracle

  Com o Oracle é possível obter uma série de resultados a partir de uma ou mais datas, como por exemplo verificar o último dia do mês ou verificar a quantidade de meses entre duas datas, então vamos a alguns exemplos:   Data atual do sistema: SYSDATE Remover meses de uma data: ADD_MONTHS(SYSDATE, -1) Adicionar meses de uma data: ADD_MONTHS(SYSDATE, +1) Buscar o último dia do mês: LAST_DAY(SYSDATE) Primeiro dia do mês: TRUNC(SYSDATE, ‘MONTH’) Quantidade de meses entre duas datas: MONTHS_BETWEEN(SYSDATE, ‘27/07/1982’) Primeiro dia do ano: TRUNC(SYSDATE, ‘YEAR’) Dias da semana: DECODE( TO_NUMBER( TO_CHAR          (SYSDATE, ‘D’) ) ,1, ‘domingo’ ,2, ‘segunda-feira’ ,3, ‘terça-feira’ ,4, ‘quarta-feira’ ,5, ‘quinta-feira’ ,6, ‘sexta-feira’ ,7,’sábado’ )

Funções de Data e Hora (Delphi)

É muito comum nos depararmos no dia a dia com a necessidade de manipular datas e horas, seja para um calculo de permanência, dias de atraso enfim, é praticamente escapar de alguma situação que necessite desse tipo de controle. Assim como a necessidade e se utilizar algum recurso para manipular as datas e horas de alguma maneira e freqüente, as duvidas de como o faze-lo também é, basta um breve olhar em qualquer fórum especializado e lá está, alguma duvida relacionada, por isso decidi falar um pouco sobre uma unit muito poderosa chamada DateUtils para a manipulação de data e hora, com um grande numero de métodos e classes que facilitam a vida de qualquer um. Alguns exemplos: CompareDate(constA, B: TDateTime): TValueRelationship; Compara apenas a data de dois valores (do tipo TDateTime) retornando: LessThanValue O primeiro valor é menor que o segundo EqualsValue Os valores são iguais GreaterThanValue O primeiro valor é maior que o segundo CompareDateTime(const A, B: TD

Funções de Data e Hora (MySQL)

Na documentação do MySQL pode ser encontrado um bom material sobre essas funções, colocarei a seguir algumas das que eu considero mais importantes: Time_To_Sec(Tempo) Converte o argumento tempo em segundos Ex.: SELECT TIME_TO_SEC(NOW()) -- 51349 NOW(), SYSDATE() Retornam data e hora atual eX.: SELECT NOW(), SYSDATE() -- 2007-12-17 17:29:21 2007-12-17 17:29:21 STR_TO_DATE(string, formato) Converte a string em determinado formato e retorna um valor DATETIME Ex.: SELECT STR_TO_DATE('03.10.2007 09.20', '%d.%m.%Y %H.%i.:%s'); -- 2007-10-03 09:20:00