Você está aqui: Página Inicial Semestre 2012.2 2.2411.1V Banco de Dados Comandos de Seleção/Consulta

Comandos de Seleção/Consulta

comandos_sql_consulta.sql — SQL code, 3 kB (3146 bytes)

Conteúdo do arquivo

# COMANDO, COLUNAS, TABELA, CONDIÇÕES

SELECT       *      FROM produto

# exibir a descricao e o preço

SELECT descricao, preco FROM produto

# ordenar pela descrição (crescente)

SELECT descricao, preco FROM produto
ORDER BY descricao #ASC

# ordernar pelo preço (decrescente)

SELECT descricao, preco FROM produto
ORDER BY preco DESC

#ordenacao multipla

SELECT * FROM produto
ORDER BY estoque, preco

# filtrar registros

# produtos que custam menos que $ 10

SELECT * FROM produto
WHERE preco < 10

# produtos com mais de 20 unidades

SELECT * FROM produto
WHERE estoque > 20
ORDER BY descricao

#   =   igual
#   >=  maior ou igual
#   <=  menor ou igual
#   <>  diferente


# faixa de valores (intervalo)

# produtos que custam entre 50 e 100

SELECT descricao, preco FROM produto
WHERE preco BETWEEN 50 AND 100
ORDER BY preco

# selecionar fora do intervalo (NOT)

SELECT descricao, preco FROM produto
WHERE preco NOT BETWEEN 50 AND 100
ORDER BY preco

# seleção elem. de um conjunto (IN)

SELECT * FROM produto
WHERE estoque IN (10, 20, 30)
ORDER BY estoque

# fora do conjunto (NOT)

SELECT * FROM produto
WHERE estoque NOT IN (10, 20, 30)
ORDER BY estoque

#
# where cidade in ("mossoro", "natal", "assu")
#
# where estado in ("SP", "RJ", "ES")
#

# Operadores lógicos
#
# E  ~ AND  ~ todas as cond verdadeiras  
#
# OU ~ OR   ~ qualquer cond verdareira

# prod q custa 50 ou mais q 100

SELECT * FROM produto
WHERE preco = 40
OR    preco > 100
ORDER BY preco

# 10 no estoque e preço acima de 70

SELECT * FROM produto
WHERE estoque = 10
AND    preco > 70

# pode aparecer varios AND ou varios OR
# em um mesmo comando

# comandos que misturam AND e OR
# utilizar parenteses para agrupar

# 10 ou 20 no estoque e preço > 50

SELECT * FROM produto
WHERE (estoque = 10 OR estoque = 20)
AND preco < 50

# pesquisa de texto
# a igualdade requer o valor completo

#select * from produto
#where descricao = "camisa"  # nao serve

SELECT * FROM produto
WHERE descricao LIKE "camisa%"

# camisa% - começa com camisa e 
#           termina com qualquer coisa

SELECT * FROM produto
WHERE descricao LIKE "%azul"

# %azul   - começa com qualquer coisa e
#           termina com azul

SELECT * FROM produto
WHERE descricao LIKE "%polo%"

# %polo%  - a palavra aparece em qualquer
#           parte do texto 
#           (inicio, meio ou fim)

# carlos%silva - começa com carlos,
#                tem qualquer (ou nenhum)
#                nome do meio e 
#                termina com silva
#
# carlos%silva% - começa com carlos
#                 e tem silva em qualquer
#                 um dos sobrenomes
#
# %carlos%silva% - os nomes aparecem em
#                  qualquer parte, na ordem
#
# ex.: jose carlos silva pinheiro    OU
#      jose carlos pinheiro silva    OU
#      carlos jose pinheiro silva


# selecionar valores NULL (vazios)

SELECT * FROM produto
WHERE preco IS NULL

# inverter sele só os preenchidos (NOT)

SELECT * FROM produto
WHERE preco IS NOT NULL