5.7.4. views Flashcards

1
Q

Maak een view BAAS dat het nummer van elke medewerker geeft, gevolgd door de naam van zijn of haar baas.

A

create or replace view baas as
select m.mnr, b.naam
from medewerkers m
join medewerkers b
on m.chef = b.mnr;

2)
create or replace view baas as
select m.mnr, b.naam
from medewerkers m
join medewerkers b
on m.chef = b.mnr
order by b.naam;

—–om te weten welke tabellen of views er zijn—-
select * from tab;

select view_name, text
from user_views;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wijzig de view zodat de gegevens stijgend gesorteerd op de naam van de baas worden weergegeven.

A

select * from baas
order by naam asc;

create or replace view BAAS as
select m.mnr, nvl(baas.naam, m.naam) as baas
from medewerkers m
left join medewerkers baas
on m.chef = baas.mnr
order by baas;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Zoek de view op in de datadicitionary en geef de viewdefinitie.

A

set long 999;

SELECT view_name, text
FROM user_views;
– extra) Verwijder de view BAAS:
DROP VIEW baas;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Maak een view JAARSAL dat de voornamen, de namen, afdelingsnaam en het jaarsalaris (incl. commissie) van alle medewerkers berekent.
VOORN NAAM AFDELING JAARSALARIS
———————————————————————————
JANA CASPERS OPLEIDINGEN 21600
NELE ALLARD VERKOOP 22200
THOMAS DEFOUR VERKOOP 32000
EMMA JACOBS OPLEIDINGEN 59700
RAF MARTENS VERKOOP 30400
ANDREA BRIERS VERKOOP 70200
AN CLERCKX HOOFDKANTOOR 41400
CHRIS SWINNEN OPLEIDINGEN 48000
LIEVE DE KONING HOOFDKANTOOR 84000
JOACHIM DEN RUYTER VERKOOP 30000
TOM SLECHTEN OPLEIDINGEN 32400
SIMON JACOBS VERKOOP 33600
DORIEN DE COOMAN OPLEIDINGEN 48000
SVEN WOUTERS HOOFDKANTOOR 27600

A

CREATE VIEW jaarsal AS
SELECT
m.voorn,
m.naam,
a.naam afdeling,
(m.maandsal * 12 + NVL(m.comm, 0)) jaarsalaris
FROM medewerkers m
JOIN afdelingen a
ON m.afd = a.anr;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Gebruik de view om enkel de medewerkers van de afdeling opleidingen te selecteren.
Verwijder je laatste view.

A

DESC jaarsal;

SELECT voorn, naam
FROM jaarsal
WHERE afdeling = ‘OPLEIDINGEN’;

DROP VIEW jaarsal;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly