1/20
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Database schema
is the logical structure of the database
Database instance
Database instance -- is a snapshot of the data in the database at a given instant in time.
Super keys
um grupo de chaves que pode identificar exclusivamente uma linha em uma tabela.
candidate key
conjunto de colunas que pode ser escolhido como chave primária de uma tabela
primary key
é uma coluna ou conjunto de colunas que identifica exclusivamente cada linha em uma tabela, garantindo a integridade dos dados.
Foreign key
um coluna que estabelece um link entre dados em duas tabelas, referenciando a chave primária da outra tabela.
DML
Data Manipulation Language : ex.: INSERTO INTO, UPDATE, DELETE, TRUNCATE, SELECT(ou DQL)..
DDL
Data Definition Language (mexe na estrutura/view/authorization do DB)
ex.: CREATE DATABASE, CREATE TABLE, ALTER TABLE, DROP TABLE
char vs varchar
char[10] aloco e utiliza os 10 espaços = ‘larissa+++’
varChar[10] aloca ATÉ 10 espaços conforme a necessidade e não utiliza o resto = ‘larissa’
ex de create table com primary e foreign key
ex de insert into
INSERT INTO
pessoas (id, nome, nascimento, sexo, peso, altura, nacionalidade)
VALUES
(DEFAULT, 'Creuza', '1920-06-15', 'M', '100.4', '1.64', 'Brasil');
‘delete from student’ resulta em?
apaga todos os registros da tabela students
pra q serve o distinct?
remove resultados duplicados
de uma consulta SQL.
select distinct nacionalidade
from gafanhotos
order by nacionalidade;
// SAIDA:
// Alemanha
// Brasil
// Moçambique
operações aritméticas dentro do select * / + -
select ID, name, salary1/2
from instructor
// o salario sai como mensal
Can rename “salary/12” using the as clause: select ID, name, salary/12 as monthly_salary
comparison operators <, <=, >, >=, =, and <>.
To find all instructors in Comp. Sci. dept with salary > 80000
select name
from instructor
where dept_name = 'Comp. Sci.' and salary > 80000
produto cartesiano de tabelas
é uma operação que combina todas as linhas de uma tabela com todas as linhas de outra, resultando em um conjunto de linhas com todas as combinações possíveis, precisa ter um campo para combinar
Find the names of all instructors who have taught some course and the course_id
select name, course_id
from instructor , teaches
where instructor.ID = teaches.ID
as
Find the names of all instructors who have a higher salary than some instructor in 'Comp. Sci'. • select distinct T.name from instructor as T, instructor as S where T.salary > S.salary and S.dept_name = 'Comp. Sci.’
Keyword as is optional and may be omitted
instructor as T ≡ instructor T
% _
% = qualquer coisa ou nada
_ = qualquer coisa
select *
from cursos
where nome LIKE 'PH%P_';
order by
List in alphabetic order the names of all instructors
select distinct name
from instructor
order by name
We may specify desc for descending order or asc for ascending order, for each attribute; ascending order is the default.
order by name desc
union, except e intersect
Each of the above operations automatically eliminates duplicates
aggregate Functions
avg, min, max, sum, count
select count (distinct ID)
from teaches
where semester = 'Spring' and year = 2018;