Вы находитесь на странице: 1из 11

Utilizando o Postgres - dicas de comandos SQL e essenciais para a

manipulao de dados
SELECT
A declarao SELECT utilizada para selecionar os dados de um banco de dados.
1. SELECT nome FROM clientes
WHERE
A clusula WHERE usada para extrair apenas os registros que cumprir um
determinado critrio.
1. SELECT * FROM clientes
2. WHERE Clie_nome = 'Adelar Poggere'
AND & OR
E o operador apresenta um recorde se tanto a condio primeira e segunda
condio verdadeira.
1. SELECT * FROM clientes WHERE clie_nome ='Adelar Poggere'
2. AND clie_nome = 'Ademar Bonetti'
OR
1. SELECT * FROM clientes WHERE clie_nome ='Adelar Poggere'
2. OR clie_nome = 'Ademar Bonetti'
Combinao AND & OR
1. SELECT * FROM clientes WHERE clie_nome ='Adelar Poggere'
2. AND (clie_nome ='Ademar Bonetti' OR clie_nome='Adelvo
Basquera')

ORDER BY
utilizado para classificar o resultado-estabelecidos por uma determinada coluna.
1. SELECT * FROM clientes
2. ORDER BY clie_nome ASC -- DESC

INSERT
INSERT INTO A afirmao usada para inserir uma nova linha em uma tabela.
1. INSERT INTO clientes
2. VALUES (4,'Denilson', 'Andrade', 'Rio Grande do Sul',
'Francisco Beltro')

UPDATE
A declarao UPDATE utilizado para atualizar os registros existentes em uma
tabela.
1. UPDATE clientes
2. SET endereco='Francisco', cidade='Francisco Beltro'
3. WHERE nome='Denilson' AND Sobrenome='Andrade'
DELETE
O DELETE usado para excluir linhas em uma tabela.
1. DELETE FROM clientes
2. WHERE Nome = 'Denilson' AND Sobrenome = 'Andrade'

DISTINCT
Em uma tabela, algumas das colunas podem conter valores duplicados.
Este no um problema, no entanto, s vezes voc ir querer listar apenas
os diferentes (distintos) valores em uma tabela.
1. SELECT DISTINCT nome FROM clientes
Como Criar uma View
1. CREATE VIEW cli AS
2. SELECT *
3. FROM clientes
4. WHERE clie_codigo = '20498';
LIKE
Localiza todos os cliente cujo nome termina com "s" da tabela "Clientes".
1. SELECT * FROM clientes
2. WHERE clie_nome LIKE '%s';
Localiza todos os cliente cujo nome Inicia com "S" da tabela "Clientes".
1. SELECT * FROM clientes
2. WHERE clie_nome LIKE 'S%';
Localiza todos os cliente cujo nome contenha "Den" da tabela "Clientes".
1. SELECT * FROM clientes
2. WHERE clie_nome LIKE '%Den%';
Localiza todos os cliente cujo nome no contenha "Den" da tabela "Clientes".
1. SELECT * FROM clientes
2. WHERE clie_nome NOT LIKE '%Den%'
Localiza todas os Clientes com a segunda letra "e" idenpendente da primeira
Chamado coringa
1. SELECT * FROM clientes
2. WHERE UPPER(clie_nome) LIKE '_E%'
IN
Localiza apenas os clientes cujo codigo seja igual a
'20037','20500','20501','20917'
1. SELECT * FROM clientes
2. WHERE clie_codigo IN ('20037','20500','20501','20917')
Localiza Todos os clientes cujo codigo seja diferente de
20037','20500','20501','20917'
1. SELECT * FROM clientes
2. WHERE clie_codigo NOT IN ('20037','20500','20501','20917')

BETWEEN
O operador seleciona uma srie de dados entre dois valores.
Os valores podem ser nmeros, texto ou datas.
Localiza Todos os clientes cujo codigo seja de "1" a "100"
1. SELECT * FROM clientes
2. WHERE clie_codigo
3. BETWEEN '01' AND '100'
Alias
Voc pode dar uma tabela ou uma coluna outro nome usando um alias.
Isto pode ser uma boa coisa a se fazer se o nome da tabela ou coluna.
forem muto complexo
Alias de Colunas
1. SELECT clie_codigo AS cod,* FROM clientes
Alias de Tabelas
1. SELECT c.clie_codigo, c.Clie_nome FROM clientes AS c
2. WHERE c.clie_codigo='1'
JOIN
A palavra-chave JOIN usada em uma instruo SQL para consultar os dados de
duas ou mais tabelas, com base em uma relao entre determinadas colunas
nestas tabelas.
Tabelas em um banco de dados so, muitas vezes, relacionadas umas s outras
com as teclas.
Uma chave primria uma coluna (ou uma combinao de colunas), com um
valor nico para cada linha. Cada chave primria valor deve ser exclusivo dentro
da tabela.
O objetivo vincular os dados em conjunto, em tabelas, sem repetio de todos
os dados em cada tabela.
INNER JOIN: Regresso filas quando h, pelo menos, um jogo em ambas as
tabelas
1. SELECT * FROM clientes
2. INNER JOIN movfiscal
3. ON clie_codigo = mfis_codentidade
4. WHERE clie_codigo = '20301'
LEFT JOIN: Retornar todas as linhas da tabela esquerda, mesmo quando no
h jogos no quadro do direito
1. SELECT * FROM clientes
2. LEFT JOIN movfiscal
3. ON clie_codigo = mfis_codentidade
4. WHERE clie_codigo = '20301'
RIGHT JOIN: Retornar todas as linhas da tabela direita, mesmo se no houver
jogos no quadro da esquerda
1. SELECT * FROM clientes
2. RIGHT JOIN movfiscal
3. ON clie_codigo = mfis_codentidade
4. WHERE clie_codigo = '20301'
FULL JOIN: Regresso filas quando h um jogo em um dos quadros
1. SELECT * FROM clientes
2. FULL JOIN movfiscal
3. ON clie_codigo = mfis_codentidade
4. WHERE clie_codigo = '20301'
UNION

O operador UNION usado para combinar o resultado-conjunto de dois ou mais
SELECT.
Observe que cada SELECT declarao no mbito da Unio devem ter o mesmo
nmero de colunas.
As colunas devem ter tambm os tipos de dados semelhantes. Alm disso, as
colunas em cada SELECT declarao deve ser na mesma ordem.
1. SELECT clie_codigo, clie_nome FROM clientes
2. UNION
3. SELECT mfis_codentidade, mfis_historico FROM movfiscal
UNION ALL
1. SELECT clie_codigo, clie_nome FROM clientes
2. UNION ALL
3. SELECT mfis_codentidade, mfis_historico FROM movfiscal

SELECT INTO
A declarao SELECT INTO seleciona dados de uma tabela e insere-lo em uma
tabela diferente.
A declarao SELECT INTO mais frequentemente usado para criar cpias de
segurana das tabelas.
1. SELECT * INTO new_Clientes
2. FROM Clientes
SELECT INTO - Juntando Tabelas
1. SELECT clie_codigo,mfis_historico
2. INTO new_junta
3. FROM Clientes
4. INNER JOIN movfiscal
5. ON clie_codigo = mfis_codentidade
6. WHERE clie_codigo = '20301'

CREATE DATABASE
A declarao CREATE DATABASE utilizado para criar um banco de dado
1. CREATE DATABASE teste

CREATE TABLE
O CREATE TABLE usado para criar uma tabela em um banco de dados.
1. CREATE TABLE Clientes
2. (
3. cod int,
4. Nome varchar(255),
5. SobreNome varchar(255),
6. endereco varchar(255),
7. Cidade varchar(255)
8. )
SQL Constraints
Restries so utilizados para limitar o tipo de dados que pode ir em uma tabela.
Constrangimentos pode ser especificado quando uma tabela criada (com CREATE
TABLE), ou aps a tabela criada (com o ALTER TABLE).
Iremos focar as seguintes restries:
NOT NULL
UNIQUE
PRIMARY KEY
FOREIGN KEY
CHECK
DEFAULT
NOT NULL
1. CREATE TABLE Clientes
2. (
3. cod int NOT NULL,
4. Nome varchar(255) NOT NULL,
5. SobreNome varchar(255),
6. endereco varchar(255),
7. Cidade varchar(255)
8. )
UNIQUE
O nico condicionalismo identifica exclusivamente cada registro em um banco de
dados tabela.
1. CREATE TABLE Clientes
2. (
3. cod int NOT NULL UNIQUE,
4. Nome varchar(255) NOT NULL,
5. SobreNome varchar(255),
6. endereco varchar(255),
7. Cidade varchar(255)
8. )
PRIMARY KEY
A PRIMARY KEY constraint identifica exclusivamente cada registro em um banco
de dados tabela.
1. CREATE TABLE Clientes
2. (
3. cod integer PRIMARY KEY,
4. Nome varchar(255) NOT NULL,
5. SobreNome varchar(255),
6. endereco varchar(255),
7. Cidade varchar(255)
8. )
FOREIGN KEY
Uma chave estrangeira em uma tabela aponta para uma PRIMARY KEY em uma
outra tabela.
1. CREATE TABLE Fiscal
2. (
3. id integer PRIMARY KEY,
4. cod integer REFERENCES Clientes (cod),
5. transacao integer
6. )
ou
1. CREATE TABLE Fiscal
2. (
3. Id int NOT NULL,
4. transacao int NOT NULL,
5. PRIMARY KEY (Id),
6. FOREIGN KEY (cod) REFERENCES Clientes(cod)
7. )
CHECK
usada para limitar o valor intervalo que pode ser colocado em uma coluna.
1. CREATE TABLE Clientes
2. (
3. cod int NOT NULL CHECK (Cod > 0),
4. Nome varchar(255) NOT NULL,
5. SobreNome varchar(255),
6. endereco varchar(255),
7. Cidade varchar(255)
8. )
DEFAULT
utilizado para inserir um valor padro para uma coluna
1. CREATE TABLE Clientes
2. (
3. cod int NOT NULL ,
4. Nome varchar(255) NOT NULL,
5. SobreNome varchar(255),
6. endereco varchar(255),
7. Cidade varchar(255)DEFAULT 'Dois Vizinhos'
8. )
CREATE INDEX
Um ndice pode ser criado em uma tabela para encontrar os dados de forma mais
rpida e eficiente.
Os usurios no podem ver os ndices, eles so usados apenas para acelerar
pesquisas / consultas.
1. CREATE INDEX index_name
2. ON Clientes (Nome)
ou
1. CREATE INDEX index_name
2. ON new_junta (clie_codigo)
DROP INDEX
utilizado para excluir um ndice em uma tabela.
1. DROP INDEX index_name;
ALTER TABLE
usado para adicionar, apagar ou alterar colunas em uma tabela existente.
ADD
1. ALTER TABLE Clientes
2. ADD Nome01 varchar(150);
DROP
1. ALTER TABLE Clientes
2. DROP COLUMN Nome01;
ALTER
1. ALTER TABLE Clientes ALTER COLUMN Nome01 TYPE VARCHAR(30);
RENAME - Mudar o Nome da coluna
1. ALTER TABLE Clientes RENAME COLUMN Nome01 TO Nome02;
RENAME para Mudar o Nome da Tabela
1. ALTER TABLE Clientes RENAME TO Clientes01;

AUTO INCREMENT
Muitas vezes, gostaramos que o valor da chave primria campo a ser criado
automaticamente cada vez que um novo registro seja inserido.
1. CREATE TABLE Clientes
2. (
3. Cod int NOT NULL AUTO_INCREMENT,
4. Nome varchar(255) NOT NULL,
5. SobreNome varchar(255),
6. endereco varchar(255),
7. Cidade varchar(255),
8. PRIMARY KEY (Cod)
9. )
Funo NOW pega data e hora
1. SELECT NOW()
NULL "IS"
1. SELECT * FROM Clientes WHERE clie_codigo IS NULL
2.
3. SELECT * FROM Clientes WHERE clie_codigo IS NOT NULL
Funes SQL agregadas
AVG() - Retorna o valor mdio
COUNT() - Retorna o nmero de linhas
MAX() - Retorna o maior valor
MIN() - Retorna o menor valor
SUM() - Devolve a soma
1. SELECT AVG(clie_codigo) FROM Clientes
2.
3. SELECT COUNT(clie_codigo) FROM Clientes
4.
5. SELECT MAX(clie_codigo) FROM Clientes
6.
7. SELECT MIN(clie_codigo) FROM Clientes
8.
9. SELECT SUM(clie_codigo) FROM Clientes

GROUP BY
A declarao GROUP BY utilizada em conjugao com as funes agregadas ao
grupo o resultado-definido por um ou mais coluna
1. SELECT SUM(clie_codigo) FROM Clientes
2. GROUP BY clie_codigo

HAVING
A clusula HAVING foi adicionado ao SQL porque a palavra-chave WHERE no
pode ser utilizado com funes agregadas.
1. SELECT SUM(clie_codigo) FROM Clientes
2. GROUP BY clie_codigo
3. HAVING SUM(clie_codigo)<2000

UPPER
UPPER () funo converte o valor de um campo com letras maisculas.
1. SELECT UPPER(clie_nome) FROM Clientes
LOWER
LOWER () funo converte o valor de um campo com letras Minsculas.
1. SELECT LOWER(clie_nome) FROM Clientes
ROUND
Afuno Round () utilizada para arredondar um campo numrico para o nmero
de casas decimais especificado.
1. SELECT ROUND(clie_codigo,12) FROM Cliente

Вам также может понравиться