Gerenciando tabelas - DDL - Data Definition Language
Criando uma tabela:
CREATE TABLE CLIENTES
(ID VARCHAR(4) NOT NULL,
NOME VARCHAR(30) NOT NULL,
PAGAMENTO DECIMAL(4,2) NOT NULL);
Deletando uma tabela:
DROP TABLE CLIENTES;
Alterando uma tabela, adicionando uma nova coluna:
ALTER TABLE CLIENTES ADD COLUMN (TELEFONE VARCHAR(10) NOT NULL);
Alterando uma tabela, modificando uma coluna:
ALTER TABLE CLIENTES MODIFY COLUMN (TELEFONE VARCHAR(12));
Apagando os dados de uma tabela, retornando-a ao estado de origem:
TRUNCATE TABLE CLIENTES;
Manipulando dados - DML - Data Manipulation Language
Inserindo dados:
INSERT INTO EMPREGADOS VALUES ('1111', 'João da Silva', 100.50);
Alterando dados:
UPDATE EMPREGADOS SET PAGAMENTO = 120 WHERE ID = '1111';
Deletando dados:
DELETE FROM EMPREGADOS WHERE ID = '1111';
COMMIT;
ROLLBACK;
SAVEPOINT S1;
ROLLBACK TO S1;
Selecionando dados - DQL - Data Query Language:
SELECT column1, column2, ...
FROM table1, table2, ...
[ WHERE column1 = 'value1'
AND column2 = 'value2'
OR (column1 = 'value3'
AND column2 = 'value4')]
[GROUP BY column1, column2, ...]
[HAVING function = 'value']
[ORDER BY column1, column2, ...];
SELECT COUNT(*) FROM EMPREGADOS;
SELECT CIDADE, AVG(PAGAMENTO) FROM EMPREGADOS
GROUP BY CIDADE
HAVING AVG(PAGAMENTO) > 100;
SELECT E.NOME, PE.PAGAMENTO
FROM EMPREGADOS E, PAGAMENTO_EMPREGADOS PE
WHERE E.EID = PE.EID;
SELECT ID, NOME FROM EMPREGADOS
WHERE PAGAMENTO > (SELECT AVG(PAGAMENTO) FROM EMPREGADOS);
Controlando o acesso aos dados - DCL - Data Control Language:
GRANT SELECT, INSERT, UPDATE, DELETE ON EMPREGADOS TD USER12;
REVOKE DELETE ON EMPREGADOS FROM USER12;
Gerenciando índices - DDL - Data Definition Language:
CREATE INDEX EMPREGADOS_IDX ON EMPREGADOS(NOME);
CREATE UNIQUE INDEX EMPREGADOS_IDX ON EMPREGADOS(NOME);
CREATE INDEX EMPREGADOS_IDX ON EMPREGADOS(NOME, PAGAMENTO);
DROP INDEX EMPREGADOS IDX;
Gerenciando visões (views) - DDL - Data Definition Language:
CREATE VIEW MAIOR_PAGAMENTO_EMPREGADOS AS
SELECT FROM EMPREGADOS
WHERE PAGAMENTO > 150;
CREATE VIEW NOMES AS
SELECT NOME FROM EMPREGADOS;
DROP VIEW NOMES;
Funções de agregação:
COUNT - Retorna o número de linhas;
SUM - Retorna a soma de uma coluna específica;
AVG - Retorna o valor médio de uma coluna específica;
MAX - Retorna o valor máximo de uma coluna específica;
MIN - Retorna o valor mínimo de uma coluna específica.
Exemplos:
SELECT AVG(PAGAMENTO) FROM EMPREGADOS;
SELECT COUNT(*) FROM EMPREGADOS;
Operadores lógicos:
IS NULL;
BETWEEN;
IN;
LIKE;
EXISTS;
UNIQUE;
ALL and ANY.
Exemplos:
SELECT * FROM EMPREGADOS
WHERE PAGAMENTO BETWEEN 100 AND 150;
SELECT NOME, PAGAMENTO
FROM EMPREGADOS
WHERE EID IN ('1111', '2222', '3333');
Negando condições com o operador NOT:
NOT EQUAL;
NOT BETWEEN;
NOT IN;
NOT LIKE;
NOT EXISTS;
NOT UNIQUE.
Exemplos:
SELECT * FROM EMPREGADOS
WHERE PAGAMENTO NOT BETWEEN 100 AND 150;
SELECT NOME, PAGAMENTO
FROM EMPREGADOS
WHERE EID NOT IN ('1111', '2222', '3333');
SELECT NOME FROM EMPREGADOS
WHERE NOME NOT LIKE 'S%';
Criando uma tabela:
CREATE TABLE CLIENTES
(ID VARCHAR(4) NOT NULL,
NOME VARCHAR(30) NOT NULL,
PAGAMENTO DECIMAL(4,2) NOT NULL);
Deletando uma tabela:
DROP TABLE CLIENTES;
Alterando uma tabela, adicionando uma nova coluna:
ALTER TABLE CLIENTES ADD COLUMN (TELEFONE VARCHAR(10) NOT NULL);
Alterando uma tabela, modificando uma coluna:
ALTER TABLE CLIENTES MODIFY COLUMN (TELEFONE VARCHAR(12));
Apagando os dados de uma tabela, retornando-a ao estado de origem:
TRUNCATE TABLE CLIENTES;
Manipulando dados - DML - Data Manipulation Language
Inserindo dados:
INSERT INTO EMPREGADOS VALUES ('1111', 'João da Silva', 100.50);
Alterando dados:
UPDATE EMPREGADOS SET PAGAMENTO = 120 WHERE ID = '1111';
Deletando dados:
DELETE FROM EMPREGADOS WHERE ID = '1111';
COMMIT;
ROLLBACK;
SAVEPOINT S1;
ROLLBACK TO S1;
Selecionando dados - DQL - Data Query Language:
SELECT column1, column2, ...
FROM table1, table2, ...
[ WHERE column1 = 'value1'
AND column2 = 'value2'
OR (column1 = 'value3'
AND column2 = 'value4')]
[GROUP BY column1, column2, ...]
[HAVING function = 'value']
[ORDER BY column1, column2, ...];
SELECT COUNT(*) FROM EMPREGADOS;
SELECT CIDADE, AVG(PAGAMENTO) FROM EMPREGADOS
GROUP BY CIDADE
HAVING AVG(PAGAMENTO) > 100;
SELECT E.NOME, PE.PAGAMENTO
FROM EMPREGADOS E, PAGAMENTO_EMPREGADOS PE
WHERE E.EID = PE.EID;
SELECT ID, NOME FROM EMPREGADOS
WHERE PAGAMENTO > (SELECT AVG(PAGAMENTO) FROM EMPREGADOS);
Controlando o acesso aos dados - DCL - Data Control Language:
GRANT SELECT, INSERT, UPDATE, DELETE ON EMPREGADOS TD USER12;
REVOKE DELETE ON EMPREGADOS FROM USER12;
Gerenciando índices - DDL - Data Definition Language:
CREATE INDEX EMPREGADOS_IDX ON EMPREGADOS(NOME);
CREATE UNIQUE INDEX EMPREGADOS_IDX ON EMPREGADOS(NOME);
CREATE INDEX EMPREGADOS_IDX ON EMPREGADOS(NOME, PAGAMENTO);
DROP INDEX EMPREGADOS IDX;
Gerenciando visões (views) - DDL - Data Definition Language:
CREATE VIEW MAIOR_PAGAMENTO_EMPREGADOS AS
SELECT FROM EMPREGADOS
WHERE PAGAMENTO > 150;
CREATE VIEW NOMES AS
SELECT NOME FROM EMPREGADOS;
DROP VIEW NOMES;
Funções de agregação:
COUNT - Retorna o número de linhas;
SUM - Retorna a soma de uma coluna específica;
AVG - Retorna o valor médio de uma coluna específica;
MAX - Retorna o valor máximo de uma coluna específica;
MIN - Retorna o valor mínimo de uma coluna específica.
Exemplos:
SELECT AVG(PAGAMENTO) FROM EMPREGADOS;
SELECT COUNT(*) FROM EMPREGADOS;
Operadores lógicos:
IS NULL;
BETWEEN;
IN;
LIKE;
EXISTS;
UNIQUE;
ALL and ANY.
Exemplos:
SELECT * FROM EMPREGADOS
WHERE PAGAMENTO BETWEEN 100 AND 150;
SELECT NOME, PAGAMENTO
FROM EMPREGADOS
WHERE EID IN ('1111', '2222', '3333');
Negando condições com o operador NOT:
NOT EQUAL;
NOT BETWEEN;
NOT IN;
NOT LIKE;
NOT EXISTS;
NOT UNIQUE.
Exemplos:
SELECT * FROM EMPREGADOS
WHERE PAGAMENTO NOT BETWEEN 100 AND 150;
SELECT NOME, PAGAMENTO
FROM EMPREGADOS
WHERE EID NOT IN ('1111', '2222', '3333');
SELECT NOME FROM EMPREGADOS
WHERE NOME NOT LIKE 'S%';
Comment