Just nu i M3-nätverket
Gå till innehåll

Fråga i SQL


emilia.johannesson95

Rekommendera Poster

emilia.johannesson95

Vi är en grupp som skapat en databas där vi fått frågor av vår lärare som vi ska göra.

 

Vi har kört fast och fråga lyder:

 

Kunderna har olika många djur. För varje kund som har minst ett djur, ange hur många djur den har. Ta med de kolumner som känns vettiga. Skriv er fråga både som implicit join (from/where) och vanlig (inner) join. Ordna fallande på antal djur. För att testa att koden är korrekt, välj alla djur som tillhör en av de kunder som har många djur, t.ex. Berit Rihs, och se om de blir lika många som i frågan ovan.

 

De tabeller vi använder är: Djur: djurID namn rasID kundID, Kund: kundID fnamn enamn persnr gatuadr postnr ort, Ras: rasID namn artID, Art: artID namn

 

Samt 

Ändra koden ovan så att ni bara tar med de kunder som har fler än tre djur (det här skulle för övrigt kunna vara en tentafråga). Den här typen av körning kan vara bra för att t.ex. skapa VIP-kunder.

 

 

Ni kan rädda våra liv om någon kan hjälpa oss med denna...

 

TACK PÅ FÖRHAND /EMILIA

Länk till kommentar
Dela på andra webbplatser

emilia.johannesson95

VI löste de första frågorna men kört fast på tredje.. Då lyder frågan:

Även Fatemeh Saleh äger många djur. Skriv hur många djur hon har av varje art (inte ras). Ta med lämpliga kolumner. Skriv er fråga både som implicit join (from/where) och vanlig (inner) join.

 
Koden för att ta fram hur många djur Fatemeh har är här:
Men nu vill vi även få fram hur många djur av varje art hon har.
 
SELECT fNamn, COUNT(kund.kundID) AS [Antal]
FROM Kund, Djur
WHERE kund.kundID = djur.kundID
GROUP BY fnamn
HAVING fnamn = 'Fatemeh'
ORDER BY [Antal] DESC;
Länk till kommentar
Dela på andra webbplatser

emilia.johannesson95

Hur långt har ni kommit? Ser ingen kod alls. jag hjälper gärna, men vill först att ni visar hur ni gjort ... 

VI löste de första frågorna men kört fast på tredje.. Då lyder frågan:

Även Fatemeh Saleh äger många djur. Skriv hur många djur hon har av varje art (inte ras). Ta med lämpliga kolumner. Skriv er fråga både som implicit join (from/where) och vanlig (inner) join.

 
Koden för att ta fram hur många djur Fatemeh har är här:
Men nu vill vi även få fram hur många djur av varje art hon har.
 
SELECT fNamn, COUNT(kund.kundID) AS [Antal]
FROM Kund, Djur
WHERE kund.kundID = djur.kundID
GROUP BY fnamn
HAVING fnamn = 'Fatemeh'
ORDER BY [Antal] DESC;
Länk till kommentar
Dela på andra webbplatser

emilia.johannesson95

Och hur kan Art-tabellen användas på något lämpligt sätt?

Det vi inte riktigt får ihop... Har du något tips?

Länk till kommentar
Dela på andra webbplatser

emilia.johannesson95

Vi är en grupp som skapat en databas där vi fått frågor av vår lärare som vi ska göra.


 


Vi har kört fast och fråga lyder:'


 


 


Välj alla anteckningar för det djur som har flest anteckningar. Ange även djurets namn och antal anteckningar.


 


De tabeller vi använder är: Djur: djurID namn rasID kundID, Kund: kundID fnamn enamn persnr gatuadr postnr ort, Ras: rasID namn artID, Art: artID namn, Anteckning: anteckningID djurID anstID anteckningstext tidpunkt anteckningtypID, Anstalld: anstID fnamn enamn, Anteckningtyp: anteckningtypID namn


 


Koden vi såhär långt har kommit fram till är:


 


SELECT djurNamn, count(anteckning.anteckningstext) AS [Antal]


FROM Anteckning, Djur

WHERE Anteckning.djurID = djur.djurID

GROUP BY djurNamn

HAVING (SELECT TOP 1 (djurNamn), count(anteckning.djurID)

FROM Djur, Anteckning 

WHERE Anteckning.djurID = djur.djurID 

GROUP BY anteckningstext);

 

Men den protesterar....

 Vi vill alltså med en nästlad SELECT-sats få fram alla anteckningar för det djur med flest anteckningar.

 

 

 

Tack på förhand!

Länk till kommentar
Dela på andra webbplatser

emilia.johannesson95

Två likartade trådar har slagits ihop.

 

Cecilia

Moderator

Hmm vilka då och hur hade du skrivit koden för att få det rätt?

Länk till kommentar
Dela på andra webbplatser

Hmm vilka då och hur hade du skrivit koden för att få det rätt?

De två trådar/ämnen som du har startat/skapat i Eforum har jag slagit ihop till en enda.

 

Tyvärr jag är ingen SQL-programmerare även om jag förstår enklare SQL-kod. Skulle nog tro att Mr Andersson återkommer så fort han hinner.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...