Eu sou leitor de vários fóruns e listas de discussão sobre PHP e notei que mais da metade das dúvidas na verdade estão relacionadas ao sql ( seja mysql,oracle,sqlite,etc…). Pensando nisto decidi alocar 30 minutos do meu horário de almoço para explicar para vocês como funciona SQL.Eu vou utilizar nos exemplos abaixo queries para Mysql e Oracle a idéia detes tutorial não é ensinar mysql ou oracle e sim o conceito por trás da linguagem SQL.
- Introdução ao SQL.
Segundo a wikipedia “Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL, é uma linguagem de pesquisa declarativa para banco de dados relacional (base de dados relacional). “ Fonte : wikipedia
Falando assim parece complicado mas vamos olhar um exemplo simples:
Exemplo (1):
select * from tabela;
O que eu estou dizendo aqui é:
selecione *(todos os campos) da tabela;
Dentro do “statement” select o * (asterisco) é o coringa para trazer todos os campos e tabela é o nome da nossa tabela.
Mas eu acho que ainda esta meio vago né !? Então vamos entender melhor o conceito de uma tabela:
Então bem , nosso “select * from tabela” irá trazer todas linhas e todas as colunas desta tabela, vale aqui um conceito importante:
Dentro de uma tabela cada linha representa um registro e cada coluna um campo.
Digamos então que você não queria todos os campos ( lembra do * asterisco ) então vamos tirar ele e colocar em seu lugar o nome dos campos Ex:
Exemplo (2):
select campo1,campo2 from tabela;
Aqui vale a pena lembrar uma coisa no futuro quando começarmos a trabalhar com mais de uma tabela temos que tomar o cuidado de não nomear campos que possuem o mesmo nome nas duas tabelas. Para evitar este tipo de problema é aconselhável trabalharmos com a seguinte estrutura:
Exemplo (3):
select tabela.campo1,tabela.campo2 from tabela;
Mais a frente estarei falando sobre apelidos(alias,aliases) o que auxiliará na composição da query.
Alguns conceitos que eu não mencionei ainda, Database, tabelas,trigers,procedures e functions ,também serão abordados em próximos posts. Amanhã estarei postando sobre filtros com a instrução “where”.