Archief - [PROG]sql oefeningen sql

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Snipor

Legacy Member
Is er iemand die dit zo even zou kunnen oplossen voor mij, ik kan er echt niet aan uit.

Opgave 1.
Geef de naam en het salaris (maandsal + comm) van de
medewerkers die meer verdienen dan het gemiddelde
maandloon op de afdelingen waar ze NIET voor werken.

Opgave 2.
Geef naam en geboortedatum (geformateerd als 'zondag
01 maart 2008') van de medewerkers die in hetzelfde
jaar geboren worden als de oudste medewerker.

Opgave 3.
Big Man Ye
==========
Ye is een Chinees met een plan: hij wil zichzelf wat
verrijken met een goksysteempje.
Op die manier meent hij een goknood te kunnen ledigen
voor ruwweg een miljard Chinezen.

Bij elke belgische ploeg heeft Ye één of meerdere
mannetjes, meestal de trainer maar soms ook de
voorzitter of iemand uit de spelersgroep. Die verzameling contacten heeft hij langzaamaan opgebouwd.
Maar ondertussen heeft Ye een database nodig om overzicht te bewaren
over zijn correspondenties.

Van elk "mannetje" houdt hij de naam en het gsm-nummer
bij. Hij houdt de naam van de ploegen bij en registreert
wie hij bij welke ploeg kan contacteren en welke
functie die man bij die ploeg heeft.

Verder registreert hij de wedstrijden (datum, thuis-
en uitploeg) die werden gefixt, de uitslag die hij had gevraagd en de uiteindelijke uitslag. Verder registreert hij bij die wedstrijdgegevens wie als contact optrad (kunnen meerder personen zijn). In een extra veldje houdt hij een tevredenheidsscore bij over de contactpersoon.

Ye heeft de volgende mannetjes:
Gillette Bodart, trainer bij La Louvière (gsm 0494/998877).
Silvio Proton, keeper bij Anderlecht (tel 02/2223334)
Bobby Peeters, spits bij Genk (tel 011/123456)
Koen Daardan, middenvelder bij Genk (tel 0444/555666)
Merk op: Ye ziet het groots en wenst zich niet te beperken door bovenstaand lijstje, hij heeft voor de toekomst grote plannen (meer ploegen, meer contactpersonen - ja zelfs, buitenland...)

Enkele van de gefixte matchen:
Op 15/02/2005: La Louvière - Geel werd 0-3, geregeld door G.Bodart.
Op 22/03/2005: Genk - Aarschot werd 2-4, geregeld door B.Peeters en K.Daardan
Op 01/05/2005: Winterslag - Anderlecht werd 1-1, geregeld via S.Proton.

Maak de nodige tabellen aan : definieer gepast de
kolommen en de constraints.
Vul de tabellen op met de voorbeeldgegevens van het
verhaal hierboven.
Geef alle DDL en DML statements die je hiervoor nodig
hebt.
Zorg voor een consistente naamgeving doorheen je
datamodel.

Snipor

Legacy Member
oef 1:
select (m.maandsal+m.comm) as salaris, m.naam
from medewerkers m
where salaris > select avg(m.maandsal+m.comm)
group by m.naam
/

oef 2:
select naam, to_char(gbdatum,'DAY dd MONTH yyyy') as gbdatum
from medewerkers
where to_char(gbdatum,'yyyy') = MAX(to_char(gbdatum,'yyyy'))
/

beide werken niet en ik moet bijna afgeven :s
bij de where gaat het steeds fout

Emerxill

Legacy Member
Ge kunt al beginnen met de opgave voor het 1e tegoei te lezen :p (vergelijk het salaris met het gemiddelde maandloon (!= salaris) van de andere afdelingen).
Dan als ge aggregate functions (AVG) wilt gaan vergelijken gaat ge "having" nodig hebben ipv "where" volgens mij (ni zeker)
En ten slotte, als ge group by wilt gebruiken moet ge alle getoonde kolommen vermelden (dacht ik).

Ben ni zeker van mijn uitspraken, ik zou da eigenlijk eerst ens moeten uittesten voor ik mijn klep open doen :D

Tyfius

Legacy Member
Zitte gij toevallig op EHB ?

Die oefeningen komen mij zo vaag bekend voor :p

Obliv`

Legacy Member
De opgaves komen mij ook zeer bekend voor :), ik zit wel op de KHK

De eerste en de tweede opgave zijn zeer eenvoudig op te lossen met een subselect. Kga de oplossing niet geve, tis uw huiswerk!
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan