Webly: SQL - Referencia basica de consultas - Webly

Ir para

Regras para postagem no fórum

É permitido postar livremente respostas com comentários, testes e avaliações dos scripts. Postagens contendo dúvidas sobre o script, deverão ser postadas no fórum principal de ASP.

IMPORTANTE: Todos os tutoriais postados neste fórum irão automaticamente para o portal Webly. Contribua você também e faça parte da equipe de colaboradores que fazem a evolução da web. Obrigado.
Página 1 de 1

SQL - Referencia basica de consultas Avaliar tópico: ****- 1 Votos

#1 Membro offline   Lucasbr Ícone

  • O.o
  • Ícone
  • Grupo: Administradores
  • Posts: 2441
  • Cadastrado: 03-julho 06
  • Localização:SBC - SP
  • Interesses:Meus interesses

Postou 14 agosto 2006 - 02:59


Bom, irei exemplificar algumas das funçoes de sql pra auxiliar quem esta começando.

Select

O select permite você buscar os registros em uma ou mais tabelas do banco de dados

A sintaxe básica do Select é:

SELECT coluna FROM tabelas WHERE coluna = variável


Exemplo 1
Selecionar todos os campos de uma tabela.

SELECT * FROM clientes WHERE cidade = 'Sao Paulo'

No exemplo, usei * que significa que eu desejo ver todos os campos da tabela clientes que contenha a palavra ‘Sao Paulo’.

Exemplo 2

Agora vou selecionar campos específicos:.
SELECT nome, cidade, estado FROM clientes WHERE cliente_id > 1000

Essa instrução, irá retornar todos os nomes,cidade e estado de meus clientes que tiverem o id_cliente maiores que 1000..


Exemplo 3

Você também pode usar o Select para buscar em campos de várias tabelas.

SELECT compras.compra_id, clientes.nome FROM clientes, compras WHERE clientes.cliente_id = compras.compra_id


O resultado será a compra_id e o nome do cliente onde os valores estiverem nas 2 tabelas.


Select distinct

O Distinct permite que voce remova registros duplicados dos resultados da consulta. O Distinct só pode ser usado com o Select.

A sintaxe para usar o Distinct é:

SELECT DISTINCT colunas FROM tabelas

Exemplo 1

Um exemplo simples:
SELECT DISTINCT cidades FROM clientes


A instrução SQL acima retorna somente registros que as cidades não coincidem.

Exemplo 2

O Select Distinct pode ser usado em mais de 1 campo:
SELECT DISTINCT cidade, estado FROM clientes

Essa instrução select irá retornar uma única cidade repetida por estado.



Select Count

A função COUNT retorna o número de registros de determinada tabela.
A sintaxe do COUNT é:
Select COUNT(fornecedor_ID) From fornecedores;

Outro exemplo:
SELECT COUNT(*) as "Pedidos" FROM compras WHERE valor_total > 2500;



SUM

Soma os valores de uma consulta
SELECT SUM(valor_total) as "gasto_total" FROM compras



MIN

Retorna o menor valor de uma consulta

SELECT MIN(valor_total) as "menor_compra" FROM compras;


MAX
Retorna o maior valor de uma consulta
SELECT MAX(valor_total) as "maior_compra" FROM compras;


Clausula where

É a condição da consulta.

SELECT id_fornecedor FROM fornecedores WHERE nome_fornecedor = 'Microsoft' or cidade_fornecedor = 'Fortaleza';


Ou seja, neste caso ele irá trazer o fornecedor Microsoft ou os fornecedores q se encontram em fortaleza.

Neste exemplo acima eu utilizei o where junto com a condição OR.

Um exemplo com o where simples esta aqui:
SELECT * FROM fornecedores WHERE cidade_fornecedor=’fortaleza’

Condição AND

A condiçao and é para filtrar os resultados da pequisa. No exemplo abaixo serão buscados os fornecedores de fortaleza e que forneçam parafusos.

SELECT * FROM fornecedores WHERE city = 'Fortaleza' and produto_fornecedor = 'Parafusos';


Combinando o or e and
SELECT * FROM fornecedores WHERE (cidade_fornecedor = 'Fortaleza' and nome_fornecedor = 'microsoft') or (cidade_fornecedor = 'sao paulo');



Bom, por equanto é isso. em breve estarei aumentando o conteudo deste topico.

abraço.
Lucas Cavallari

Dúvidas? No fórum... nada de MP nem MSN...!
Se a resposta te ajudou, retorne ao topico e diga, pois facilitará para outros usuarios...
0

#2 Membro offline   Thiago Ananias Ícone

  • Ícone
  • Grupo: Moderadores
  • Posts: 1033
  • Cadastrado: 14-julho 06
  • Localização:São Paulo - SP

Postou 14 agosto 2006 - 03:11

Muito bom Lucas, eu soh queria adicionar duas coisas:

Performance, é mais rápida uma consulta assim:
SELECT campo1, campo2 FROM tabela

do que assim:
SELECT * FROM tabela

E outra forma de ligar tabelas que eu uso é da seguinte forma
SELECT a.campo1, b.campo2 FROM tabela1 AS a INNER JOIN tabela2 AS b ON a.id_ligacao = b.id_ligacao

eu coloco o "AS" e depois alguma letra, porque as vezes o nome da tabela é muito grande, e eu sempre seleciono referenciando os nomes dos campos, então assim fica mais limpo.

OK! :)
Nhenhenhê, tititi, blábláblá!!
0

#3 Membro offline   Lucasbr Ícone

  • O.o
  • Ícone
  • Grupo: Administradores
  • Posts: 2441
  • Cadastrado: 03-julho 06
  • Localização:SBC - SP
  • Interesses:Meus interesses

Postou 14 agosto 2006 - 03:45

é q eu nao entrei no inner join ainda né.. fiz o basicao mesmo..

Ainda tenho muito pra colocar aqui.. mas é bom q a galera vai contribuindo pra ese topico servir de referencia!

Valeu Thiago!
Lucas Cavallari

Dúvidas? No fórum... nada de MP nem MSN...!
Se a resposta te ajudou, retorne ao topico e diga, pois facilitará para outros usuarios...
0

#4 Membro offline   Thiago Ananias Ícone

  • Ícone
  • Grupo: Moderadores
  • Posts: 1033
  • Cadastrado: 14-julho 06
  • Localização:São Paulo - SP

Postou 14 agosto 2006 - 03:57

Opa lembrei de uma coisa !!!!
Essa dica soh serve para quem utiliza o SQL Server, naum sei se funciona no SQL Server 2005, mas no 2000 funfa, eh o seguinte:
SELECT campos FROM tabela WITH(NOLOCK)

Pq sempre quando uma operacao é acionada(select, delete, update, insert) a tabela é bloqueada, maaaas para um SELECT não é necessário isso, e no SQL Server você pode colocar este comando WITH(NOLOCK) para a consulta retornar um pouquinho + rápido !!

:)
Nhenhenhê, tititi, blábláblá!!
0

Página 1 de 1


Resposta rápida

  

1 usuário(s) está(ão) lendo este tópico
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)