Projeção refere-se ao subconjunto do conjunto de todas as colunas encontradas em uma tabela que você deseja retornar. Pode variar de 0 ** até o conjunto completo.
Existem dois "conjuntos" em uma tabela que correspondem às duas dimensões de uma tabela. Cada tabela possui um conjunto de colunas e um conjunto de linhas . Cada valor individual em uma tabela pode ser encontrado em uma interseção específica desses dois * conjuntos **. No entanto, seu valor não é encontrado "indo para" um endereço, como T60 , da mesma maneira que você faria com o Excel.
Não há ordem inerente às tabelas relacionais . É importante lembrar. Em vez disso, para recuperar seu valor único, você selecionaria um subconjunto das colunas (uma neste caso) e um subconjunto das linhas (uma neste caso). Para selecionar um subconjunto de uma coluna dentre todas as disponíveis, você só precisa saber o nome e o nome da tabela. O nome da coluna será exclusivo em sua tabela.
Depois de escolher a coluna em que seu valor está, você precisará escolher a linha específica em que está. No entanto, as linhas não têm nomes como as colunas. A maneira como especificamos uma linha é. . . bem, nós não fazemos exatamente. . . Especificamos algo que sabemos sobre o valor que estamos procurando. Você precisa saber algo relacionado (literalmente) ao valor que está procurando. Se você puder especificar informações relacionadas suficientes, poderá reduzir o conjunto de linhas retornadas para o que você está procurando.
Pense nisso como se um estudante universitário tivesse perdido sua mochila. Digamos que um cara tenha perdido. Ele liga para achados e perdidos, e a mulher que atende diz: "Sim, temos algumas dúzias de mochilas. Você pode descrever?" Você diz "Bem, é azul?". Ao que ela responde: "Você está me perguntando ou me dizendo", e depois diz: "Eu tenho oito azuis, vou ter que fazer melhor que isso, e você não parecia muito certo disso". Você diz "Vamos ver, umm, sim! Tinha o meu livro de matemática 1010 nele". "Bom, agora você está com quatro anos." Então você se lembra de que deveria conhecer sua namorada, Lucy, em 15 minutos, e isso provocou outra lembrança - da época em que você estava entediado no Math 1010 e escreveu - em letras minúsculas reais na parte inferior da mochila: "Eu amo Lucy ".Ricky ".
A projeção pode ser comparada a dizer o que você perdeu - uma mochila. A seleção pode ser comparada à descrição de seus atributos : é azul, possui um livro de matemática 1010 e tem "I love Lucy" escrito na parte inferior.
Você faz a mesma coisa com o SQL. Primeiro, que tipo de informação você deseja ver. Segundo, critérios que descrevem qual deles você deseja ver. Estes são chamados de predicados ou declarações de verdade . Eles são verdadeiros para um ou mais membros do conjunto. Caso contrário, eles não retornam nenhum valor.
* As implementações SQL de alguns fornecedores fornecem meios para quebrar essas regras, como Tabelas Aninhadas no Oracle. No entanto, as tabelas bidimensionais padrão ainda são a forma predominante.
** CJ Date escreveu um artigo muito interessante chamado "Uma Tabela Sem Colunas". Achei que valeu a pena ler, como faço com a maioria dos seus muitos artigos "Escritos". Eu recomendo!