QBE e QUEL - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

QBE e QUEL

Description:

QBE e QUEL Ana Carolina Salgado Fernando Fonseca Val ria Times – PowerPoint PPT presentation

Number of Views:82
Avg rating:3.0/5.0
Slides: 23
Provided by: diUfpeBr8
Category:
Tags: qbe | quel | sgbd

less

Transcript and Presenter's Notes

Title: QBE e QUEL


1
QBE e QUEL
  • Ana Carolina Salgado
  • Fernando Fonseca
  • Valéria Times

2

QBE
  • A Linguagem QBE
  • Desenvolvida pela IBM (DB2, Paradox).
  • Uma das primeiras linguagens de consulta gráficas
    para BD.
  • Usuário não precisa especificar uma consulta
    estruturada explicitamente.
  • A consulta é formulada escrevendo-se em modelos
    (templates) de relações.

3

QBE
  • A Linguagem QBE (Cont.)
  • Constantes e variáveis são digitadas nas colunas
    dos templates para construção de um exemplo.
  • Vantagens de QBE
  • Usuários não precisam
  • Lembrar dos nomes dos atributos ou relações.
  • Seguir regras de sintaxe rígidas para
    especificação da consulta.

4

QBE
  • Consultas Básicas
  • Para uma dada consulta, pode-se digitar
  • Constantes especificam valores que devem
    aparecer exatamente nas colunas.
  • Elementos de Exemplo
  • Consistem em variáveis de domínio
  • Possuem valores apenas ilustrativos
  • Devem ser precedidas pelo (_).
  • Operador P Indicam a necessidade de impressão
    dos valores nas colunas.

5
Esquema Relacional
dos Exemplos de QBE
6
QBE
  • Problemas
  • Listar o salário e o código do departamento do
    empregado José.

_01 José M P._1000
P._010 _03
José M P._1000
P._010
José M P._X
P._Y
José M P.
P.
7
QBE
  • Utilizando outros operadores relacionais
  • Problemas
  • Listar os códigos dos empregados que trabalham
    mais do que 20 horas no projeto 10.

P. 10 gt20
P. 1 gt20 P.
2 gt20
8
QBE
  • Problemas
  • Listar os códigos dos empregados que trabalham em
    ambos projetos 10 e 15.

9
QBE
  • Operação de Junção
  • Usando a mesma variável nas colunas a serem
    juntadas.
  • Várias junções podem ser especificadas em uma
    única consulta.
  • Uma tabela de resultado para exibir o resultado
    da junção pode ser especificada.
  • Problemas
  • Listar os nomes e os salários dos empregados que
    trabalham no departamento de Física.

10
QBE
11
QBE
  • Junção recursiva Usa-se variáveis distintas para
    representar as diferentes referências à tabela.
  • Problemas
  • Para cada empregado, mostre o nome e o salário
    bem como o nome e o salário de seu supervisor.

_COD _S1 _S2
12

QUEL
  • A Linguagem QUEL
  • Linguagem de Consulta do SGBD INGRES, um dos
    primeiros sistemas relacionais, amplamente
    conhecido tanto no meio acadêmico quanto
    comercial.
  • Utiliza o Cálculo Relacional
  • utilização de variável tupla, a qual se estende
    por uma relação,
  • construção baseada nos predicados de primeira
    ordem.

13
Esquema Relacional
dos Exemplos de QUEL
14

QUEL
  • Estrutura básica
  • Comando Range
  • range of t is r
  • onde
  • t é uma variável tupla, restrita a assumir
    valores de tuplas na relação r
  • r é uma relação
  • Exemplo
  • range of P is Produto

15

QUEL
  • Estrutura básica
  • Comando Retrieve
  • retrieve into (lttabelagt)
  • unique (ltvariável.ALL ou
  • referência a atributo ou
  • atributo expressãogt)
  • where ltcondiçãogt
  • sort by lt variável. atributo A Dgt

16

QUEL
  • Estrutura básica
  • Exemplo
  • range of P is Produto
  • retrieve (P.descrição)
  • where P.valor gt 10

17
QUEL
  • Problemas
  • Listar a descrição de todos os produtos com seus
    valores unitários
  • range of P is Produto
  • retrieve (P.descrição, P.valor)
  • Listar todo o conteúdo da tabela vendedor
  • range of X is Vendedor
  • retrieve (X.ALL)

18
QUEL
  • Problemas
  • Listar o número do pedido e o código do produto
    no item-do-pedido com quantidade igual a 35
  • range of S is item-do-pedido
  • retrieve (S.número, S.código-p)
  • where S.quantidade 35
  • Listar os nomes dos clientes com as respectivas
    cidades e estado na ordem alfabética reversa
  • range of Y is Cliente
  • retrieve (Y.nome, Y.cidade, Y.UF)
  • sort by Y.UF D, Y.cidade D

19
QUEL
  • Problemas
  • Mostrar a quantidade total pedida para o produto
    VINHO de código 78
  • range of R is item-do-pedido
  • retrieve (Z sum(R.quantidade))
  • where R.código-p 78
  • Quais os clientes que fizeram pedidos?
  • range of C is Cliente
  • range of P is Pedido
  • retrieve unique (C.nome)
  • where C.código-c P.código-c

20
QUEL
  • Problemas
  • Mostre os clientes ordenados pelos nomes, que têm
    prazo de entrega maior que 15 dias para o produto
    queijo
  • range of C is Cliente
  • range of P is Pedido
  • range of PR is Produto
  • range of I is item-do-pedido
  • retrieve unique (C.nome)
  • where C.código-c P.código-c and
  • P.número I.número and I.código-pPR.código-p
  • and P.prazo gt 15 and PR.descrição queijo

21
QUEL e SQL
  • Exercícios
  • 1) Listar todo o conteúdo da tabela produto
  • 2) Listar os produtos que tenham unidade igual a
    M e valor unitário igual a 1,05
  • 3) Quais os clientes que fizeram pedidos?
  • 4) Listar o número do pedido em ordem crescente,
    o nome de cada produto em ordem alfabética e o
    valor total de cada item pedido.
  • 5) Mostre o nome e o endereço dos clientes cujos
    pedidos têm um prazo de entrega inferior a 7dias
  • 6) Quais as descrições dos produtos comprados
    pelo cliente de nome José?

22
QUEL e SQL
  • 7) Listar os vendedores ordenados pelo nome que
    venderam produtos com valor unitário superior a
    100 ou em uma quantidade maior do que 10.
  • 8) Liste os vendedores ordenados pelo nome que
    têm pedidos de vinhos com prazo de entrega
    vencido (igual a zero).
  • 9) Quantos pedidos foram realizados por vendedor?
    (apenas em SQL)
  • 10) Mostre os clientes do vendedor André,
    ordenados pelo nome, com seus respectivos
    endereços e agrupados pela UF. (apenas em SQL)
Write a Comment
User Comments (0)
About PowerShow.com