620 Shares 2127 views

instruções SQL básicas

padrão SQL foi adoptada em 1992 e ainda em uso hoje. Que se tornou uma referência para muitos sistemas de gerenciamento de banco de dados. Claro, alguns fabricantes utilizam sua própria interpretação da norma. Mas em qualquer sistema, ainda são os principais componentes – instruções SQL.

introdução

Usando instruções SQL no banco de dados ocorre tabelas de gerenciamento de valores e sua preparação para análise e visualização. Eles são um conjunto de palavras-chave, pelo qual o sistema sabe o que fazer com os dados.

Definir várias categorias de instruções SQL:

  • definição de objetos de banco de dados;
  • manipulando os valores;
  • protecção e gestão;
  • parâmetros da sessão;
  • Informações sobre a base;
  • SQL estática;
  • SQL dinâmico.

instruções SQL para manipulação de dados

Esta categoria inclui as palavras-chave com o qual você pode controlar o posicionamento dos valores no banco de dados.

INSERT. Insere uma linha em uma tabela existente. Ele pode ser usado como um valor único ou múltiplo, definida por uma determinada condição. Por exemplo:

INSERT INTO

o nome da tabela (coluna 1 nome, o nome da coluna 2)

VALORES (valor um valor de 2).

Para usar o operador de instrução SQL INSERT com vários valores, use a seguinte sintaxe:

INSERT INTO

nome uma tabela (nome da coluna 1, nome da coluna 2)

nome da coluna seleccionar 1, o nome da coluna 2

DE nome da tabela 2

WHERE nome 2.imya coluna da tabela 1> 2

Esta consulta seleciona todos os dados na Tabela 2, que é maior do que 2 para 1 coluna e colá-los para o primeiro.

UPDATE. Como o nome indica, esta declaração atualiza os dados de consulta SQL em uma tabela existente em uma certa base.

exemplo:

ATUALIZAÇÃO nome da tabela 1

nome coluna SET = 2 "manjericão"

ONDE nome da tabela coluna 1.imya 1 = 1

Este valor de preenchimento estrutura manjericão todas as linhas que satisfazem o número 1 na primeira coluna.

DELETE. Elimina os dados da tabela. Você pode especificar qualquer condição ou para remover todas as linhas.

DELETE FROM nome da tabela

ONDE coluna nome tablitsy.imya 1 = 1

A consulta acima irá apagar todos os dados do banco de dados com o valor um na primeira coluna. Veja como você pode limpar toda a tabela:

DELETE FROM nome da tabela.

Em seguida é necessário dizer sobre a instrução SELECT. Ele é um dos mais importantes, então ele terá de dedicar um capítulo à parte.

instrução SELECT

O principal objetivo do SELECT – seleção de dados de acordo com certas condições. O resultado de seu trabalho é sempre uma nova tabela com dados selecionados. MS operador SQL SELECT pode ser utilizado para ponderar diferentes solicitações. Portanto, junto com ele, você pode considerar outras palavras-chave relacionadas.

Para selecionar todo o símbolo de dados "*" é utilizado de uma tabela específica.

SELECT *

DE nome da tabela 1

O resultado desta consulta será uma cópia exata da tabela 1.

E aqui é obtido por ONDE condição que puxa para fora a partir da Tabela 1, todos os valores maiores do que 2 na coluna 1.

SELECT *

DE nome da tabela 1

WHERE nome 1.imya coluna da tabela 1> 2

Você também pode especificar na seleção que são necessários apenas determinadas colunas.

Selecione o nome da tabela coluna 1.imya 1

DE nome da tabela 1

O resultado desta consulta todas as linhas com valores de coluna 1. Usando os operadores MS SQL pode criar a sua própria mesa, no decurso da substituição, o cálculo e substituindo certos valores.

SELECIONAR

nome da tabela coluna 1 1.imya

nome da tabela coluna 2 1.imya

nome da tabela coluna 3 1.imya

«=» AS EQ

nome da tabela coluna 1.imya 2 do nome da tabela * coluna 1.imya 3 como SUMMA

DE nome da tabela 1

Esta consulta aparentemente complexo busca todos os valores da Tabela 1, e em seguida cria uma nova coluna e EQ SUMMA. Primeiro entra sinal de "+", na segunda coluna de dados do produto 2 e 3. Este resultado pode ser representado como uma mesa, para entender como ele funciona:

coluna 1

coluna 2

coluna 3

EQ

SUMMA

Nome do Produto 1

10

50

+

500

Nome do produto 2

15

100

+

1500

Se você estiver usando uma instrução SELECT, você pode passar imediatamente dados de pedido por qualquer motivo. Ele usa a palavra ORDER BY.

SELECIONAR

nome da tabela coluna 1 1.imya

nome da tabela coluna 2 1.imya

nome da tabela coluna 3 1.imya

DE nome da tabela 1

ORDEM DE nome da coluna 2

A tabela resultante será parecido com este:

coluna 1

coluna 2

coluna 3

1

1

54

3

2

12

7

3

100

2

5

1

Isto é, todas as linhas foram instalados de uma maneira tal que os valores da coluna 2 foram ascendente.

Os dados também podem ser obtidas a partir de várias tabelas. Para maior clareza, primeiro você deve imaginar que eles têm dois, alguns estão no banco de dados:

Tabela "Funcionários"

número

nome

sobrenome

1

Vasya

Vasin

2

Petya

Petin

Tabela "Salário"

número

taxa

creditado com

1

1

10000

2

0,5

3500

Agora você precisa, tais como ligando as duas tabelas para obter valores comuns. Usando instruções SQL básicas que pode ser feito da seguinte forma:

SELECIONAR

Sotrudniki.Nomer

Sotrudniki.Imya

Zarplata.Stavka

Zarplata.Nachisleno

FROM Employees Salário

ONDE Sotrudniki.Nomer = Zarplata.Nomer

Não é obtido a partir de duas tabelas diferentes de valores, unidos por número. O resultado é o seguinte conjunto de dados:

número

nome

taxa

creditado com

1

Vasya

1

10000

2

Petya

0,5

3500

Um pouco mais sobre o SELECT. Usando funções agregadas

Uma das declarações básicas SQL SELECT podem produzir alguns cálculos na amostra. Para fazer isso, ele usa certas funções e fórmulas.

Por exemplo, para obter o número de registros da tabela "Employees", você precisa usar a consulta:

SELECT COUNT (*) como N

FROM Employees

O resultado será uma tabela com uma coluna e valor.

N

2

função pode ser utilizada em consultas que calcular os valores mínimos soma, máximo e, e média. Para fazer isso, palavras-chave são usadas SUM, MAX, MIN, AVG.

Por exemplo, é necessário para manter uma amostra da tabela já conhecido "Salário":

número

taxa

creditado com

1

1

10000

2

0,5

3500

Você pode aplicar um tal pedido e ver o que acontece:

SELECIONAR

SUM (Zarplata.Nachisleno) COMO SUMMA

MAX (Zarplata.Nachisleno) como Max

MIN (Zarplata.Nachisleno) COMO MIN

AVG (Zarplata.Nachisleno) COMO SRED

do salário

A tabela final será como se segue:

SUMMA

MAX

MIN

SRED

13500

10000

3500

6750

Essa é a forma, você pode escolher a partir de uma base de dados os valores apropriados em tempo real para executar um cálculo de várias funções.

União, interseção e diferença

Combinar várias consultas em SQL

SELECIONAR Sotrudniki.Imya

FROM Employees

ONDE Sotrudniki.Nomer = 1

UNIÃO

SELECIONAR Sotrudniki.Imya

FROM Employees Salário

ONDE Zarplata.Nomer = 1

Deve-se ter em mente que nesta tabela associação devem ser compatíveis. Ou seja, tem o mesmo número de colunas.

A sintaxe da instrução SELECT e ao regime de transformação

A primeira coisa que selecionar determina a área da qual ele vai pegar os dados. Para fazer isso, use a palavra-chave FROM. Se não for especificado, o que escolher.

Você pode, então, apresentar a declaração SQL WHERE. Com a ajuda do SELECT é executado através de cada linha da tabela e verifica os dados para o cumprimento da condição.

Se a consulta tem um GROUP BY, então não é o agrupamento de valores destes parâmetros.

Operadores para comparar dados

Eles têm vários tipos. Em SQL operadores de comparação pode testar diferentes tipos de valores.

  • "=". Denota, como você pode imaginar, a igualdade das duas expressões. Por exemplo, já foi utilizada nos exemplos acima – ONDE Zarplata.Nomer = 1.

  • ">". Sinal de maior. Se o valor do lado esquerdo da expressão é maior então a verdadeira lógica é retornado e a condição for atendida.

  • "<". Menos de sinal. Reverter o operador anterior.

  • Sinais de " =". Ela difere de operadores simples mais e menos é que, com operandos iguais condição também é verdadeiro.

  • "". Eu não me importo. A condição é considerado TRUE, se apenas um operando não é igual a outro. Ele tem mais uma interpretação – "! =".

COMO

Traduzir esta palavra-chave pode ser tão "similar". COMO operador em SQL é usado aproximadamente no mesmo princípio – executa uma consulta a partir de um modelo. Ou seja, ele permite expandir os dados de exemplo do banco de dados usando expressões regulares.

Por exemplo, ele define tal tarefa: a partir da base "staff" já conhecido para obter todas as pessoas cujo nome termina com "I". Em seguida, o pedido pode ser composto da seguinte forma:

SELECT *

FROM Employees

ONDE nome como `% I` ll

Sinal de por cento, neste caso, significa a máscara, ou seja, qualquer personagem, e seu número. E na carta, "I» SQL determina que o último caractere que ser assim.

CASE

Esta declaração SQL Server é uma implementação de múltipla escolha. Assemelha-se a uma instrução switch em muitas linguagens de programação. instrução CASE no SQL executa uma ação de várias condições.

Por exemplo, você seleciona a partir de uma tabela de valores mínimos "salário" e máximo.

número

taxa

creditado com

1

1

10000

2

0,5

3500

Em seguida, o pedido pode ser composto da seguinte forma:

SELECT *

do salário

ONDE CASE WHEN SELECT MAX (Charged) THEN Máxima

Ao selecionar MIN (Charged) THEN mínima

resultado final

na coluna "Charged", neste contexto, o sistema procura o valor máximo e mínimo. Em seguida, usando o campo END criado "total", que será registrado no "máximo" ou "mínimo", dependendo do resultado da condição.

By the way, no SQL existe uma forma mais compacta de CASE – COALESCE.

definição de dados

Esta visão permite-lhe levar a cabo uma variedade de tabelas em mudança – criar, apagar, modificar e trabalhar com índices.

A primeira, que vale a pena considerar – CREATE TABLE. Ele não faz nada mais do que criar uma tabela. Se você digitar Basta criar consultar a tabela, nada vai acontecer, porque você precisa especificar vários outros parâmetros.

Por exemplo, para criar a tabela familiar "Funcionários" querer usar o comando:

CRIAR tabela Funcionários

(Número de identificação (10) NOT NULL

varchar Nome (50) NOT NULL

Sobrenome varchar (50) NOT NULL)

Neste pedido, entre parênteses imediatamente definidos nomes de campos e seus tipos, bem como se ele pode ser NULL.

DROP TABLE

Executa uma tarefa simples – remover referido quadro. Tem uma opção adicional, se houver. Ela absorve um erro ao excluir, se a tabela necessária não existe. Exemplo de utilização:

DROP TABLE funcionários SE EXISTE.

CREATE INDEX

Em SQL, existe um sistema de índices, o que permite um acesso mais rápido aos dados. Em geral, é um link que aponta para uma coluna particular. Criar um índice pode ser um simples pedido:

CREATE INDEX nazvanie_indeksa

EM nazvanie_tablitsy (nazvanie_stolbtsa)

Use esta declaração em T-SQL, Oracle, PL SQL e muitas tecnologias outras interpretações.

ALTER TABLE

operador altamente funcional com inúmeras opções. Em geral, a mudança produz uma definição de estrutura e tabelas de alocação. Operador é usado no Oracle SQL, PostgreSQL, e muitos outros.

Referência será agora apresentado com várias opções usando ALTER TABLE.

  • ADD. Realiza a adição de uma coluna numa tabela. Sintaxe lhe isto: ALTER TABLE ADD tip_hranimyh_dannyh nazvanie_stolbtsa nazvanie_tablitsy. Pode ter um parâmetro SE NÃO EXISTE, que suprimir um erro se uma coluna já criou;

  • DROP. Remove coluna. SE EXISTE também é concluído, o que irá gerar um erro dizendo que a coluna solicitada não existe;

  • CHANGE. Usado para renomear o nome do campo especificado. Exemplo de uso: ALTER TABLE MUDANÇA nazvanie_tablitsy OldName new_name;

  • Modificar. Este comando irá alterar o tipo de uma coluna específica e atributos adicionais. E é usado como este: ALTER TABLE MODIFICAR nazvanie_tablitsy nazvanie_stolbtsa tipo de dados atributos;

CREATE VIEW

Em SQL, não existe tal coisa como uma idéia. Em suma, é uma espécie de tabela virtual com os dados. Ele é formado como resultado da amostra usando a linguagem de instrução SQL SELECT. Visualizações pode restringir o acesso ao banco de dados para ocultá-los, para substituir os nomes das colunas reais.

O processo de criação ocorre por uma consulta simples:

CREATE VIEW nome vista AS SELECT FROM * nome da tabela

Amostragem pode ocorrer como um banco de dados inteiro como um todo, e em uma determinada condição.

Um pouco sobre as características

Em SQL queries frequentemente usam diferentes funções embutidas que lhe permitem interagir com os dados e convertê-los em tempo real. Vale a pena considerar-los, pois eles são uma parte integrante de uma linguagem estruturada.

  • COUNT. Produz contagem de linhas ou entradas em uma tabela particular. Como opção, você pode especificar o nome da coluna, em seguida, os dados serão tomadas a partir dele. Select count * FROM Funcionários;

  • AVG. Este recurso se aplica apenas a colunas com dados numéricos. O seu resultado é a determinação da média aritmética de todos os valores;

  • MIN e MAX. Essas funções têm sido utilizados neste artigo. Eles definem a valores mínimos da referida coluna e máximo;

  • SUM. É simples – a função calcula a soma dos valores em uma coluna. Ele é usado exclusivamente para o tipo de dados numéricos. Adicionando o parâmetro de solicitação DISTINCT, será adicionado apenas para valores exclusivos;

  • ROUND. Função de arredondamento números fracionários decimais. A sintaxe utilizada pelo nome da coluna e o número de casas decimais;

  • LEN. Uma função simples que calcula o comprimento da coluna. O resultado será uma nova tabela que mostra o número de caracteres;

  • AGORA. Esta palavra-chave é usada para calcular a data e hora atual.

operadores adicionais

Muitos exemplos das instruções SQL são palavras-chave que executam pequenas tarefas, mas, no entanto simplificar muito amostra ou atividade de banco de dados.

  • AS. Ele é usado quando você deseja organizar visualmente o resultado de atribuir o nome especificado para conseguir uma mesa.

  • ENTRE. Uma ferramenta muito útil para a amostragem. Ele indica o intervalo de valores, incluindo a necessidade de se obter os dados. O parâmetro de entrada recebe a partir de e para uma gama de número é utilizado;.

  • NÃO. O operador dá o oposto da expressão.

  • TRUNCATE. Remove dados a partir da referida porção de base. Diferente dos operadores que recuperar os dados após a sua utilização impossível. É importante notar que a implementação de uma determinada palavra-chave em SQL diferente pode haver diferentes interpretações. Portanto, antes de tentar usar TRUNCATE, mais familiarizado com a informação de fundo.

  • LIMIT. Define o número de linhas de saída. A peculiaridade do operador é que ele está sempre localizado no final. Leva uma obrigatória e um parâmetro opcional. O primeiro indica quantas linhas com os dados selecionados para mostrar. E se o segundo, então o operador opera tanto o intervalo de valores.

  • UNION. operador de user-friendly muito de combinar várias consultas. Ele já se reuniu entre os exemplos deste neste artigo. Você pode exibir as linhas de várias tabelas, UNION combinando-os para uso mais conveniente. Sintaxe ele: SELECT column_name FROM tabela UNION SELECT FROM tabela imya_drugogo_stolbtsa imya_drugoy. O resultado é um quadro-resumo das exigências unidos.

  • PRIMARY KEY. Traduzido como "chave primária". Na verdade, que essa terminologia é usada em materiais de referência. Ele é um identificador exclusivo para a linha. Ele é usado, como regra, ao criar uma tabela para indicar o campo que irá contê-lo.

  • DEFAULT. Assim como o operador anterior, utilizados na execução de criar uma consulta. Ele define o valor padrão, que será preenchido no campo quando ele é criado.

Algumas dicas para desenvolver uma plataforma para trabalhar com SQL

  1. NULL. Iniciantes e não apenas programadores na preparação de pedidos, muitas vezes esquecer-se sobre a disponibilidade de valores nulos. Como resultado, o código de erro se arrasta, o que é difícil de controlar no processo de depuração. Portanto, ao criar uma tabela, valores de amostra ou recalculados precisa parar e pensar, e se ocorrência NULL é levado em conta na área de consulta.

  2. Memória. Neste trabalho, foram mostradas uma série de funções, capaz de executar certas tarefas. No desenvolvimento do shell para trabalhar com o banco de dados, você pode "compensar" o cálculo de expressões simples para o sistema de banco de dados. Em alguns casos, isso dá um impulso significativo no desempenho.

  3. Restrições. Se você quiser começar a partir do banco de dados com milhares de linhas apenas dois, é necessário usar operadores tais como limitar ou TOP. Não há necessidade de recuperar dados por meio do shell do desenvolvimento da linguagem.

  4. Conectar. Após o recebimento de dados de várias tabelas, muitos programadores começar a reduzi-los juntos envelope significa memória. Mas por quê? Afinal, você pode fazer um pedido em que tudo vai estar presente. Você não tem que escrever o código uma vez e reservar memória adicional no sistema.

  5. Classificação. Se é possível aplicar o regulamento no pedido, ou seja, as forças de DBMS, é necessário usá-lo. Isto vai poupar muito sobre os recursos quando o programa ou serviço.

  6. Muitos pedidos. Se você tiver que inserir um monte de discos em sequência, então otimização deve pensar sobre o de pacote de dados é inserido um pedido. Isso também irá aumentar o desempenho de todo o sistema.

  7. colocação cuidadosa dos dados. Antes de elaborar a estrutura de base precisa pensar sobre como e se um tal número de tabelas e campos necessários. Talvez haja uma maneira de combiná-los, ou desistir de alguns. Muitas vezes, os programadores usam uma quantidade excessiva de dados que é usado em nenhum lugar e nunca.

  8. Tipos. Para economizar espaço e recursos precisam ser sensíveis aos tipos de dados utilizados. Se você pode tirar vantagem de um menos "pesado" para o tipo de memória, você tem que usar seu nome. Por exemplo, se for conhecido que neste campo é um valor numérico não será superior a 255, por isso que a utilização de INT 4-byte, se houver TINYINT um byte.

conclusão

Em conclusão, deve-se notar que a linguagem é estruturada consultas SQL agora é usado em quase toda parte – sites, serviços web, software de desktop, aplicações móveis. Portanto, o conhecimento SQL vai ajudar todos os sectores de desenvolvimento.

No entanto, a modificação do padrão de língua nativa, por vezes diferem uns dos outros. Por exemplo, os operadores PL SQL pode ter sintaxe diferente do que em SQL Server. Portanto, antes de começar a desenvolver com esta tecnologia, é necessário para se familiarizar com ele por diretrizes.

No futuro, os homólogos, o que poderia superar a funcionalidade SQL e desempenho, é pouco provável a aparecer, de modo que este âmbito é bastante um nicho promissor para qualquer programador.