Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
u3_databaser [2017-09-01 14:54]
127.0.0.1 external edit
u3_databaser [2022-07-18 13:20] (current)
Line 4: Line 4:
  
 Läs i manualen om inbygda funktioner och hur man kan använda SELECT.\\ Läs i manualen om inbygda funktioner och hur man kan använda SELECT.\\
-**Några tips!** distinct, group by, sum, count, concat, mm...+**Några tips!** distinct, group by, sum, count, concat, having mm...
  
 Det finns en tabell som heter **Pengar**.\\ Det finns en tabell som heter **Pengar**.\\
-1. Skriv en fråga som visar vilka olika valutor som finns i tabellen. En rad per valuta.+1. Skriv en fråga som ger en rad till svar och det är hur många rader det finns i tabellen.
  
-2. Skriv en fråga som visar vilka olika valörer som finns i tabellen. En rad per valör.+2. Skriv en fråga som ger en rad till svar och det är hur många rader det finns av valutan 'Kr'.
  
-3.Om du vill veta hur många det finns av varje valör i en valuta, hur tar du+3. Skriv en fråga som visar alla rader som inte är av valutan 'Kr'
 + 
 +4. Skriv en fråga som summerar hur mycket det finns av dollar i tabellen. 
 + 
 + 
 + 
 +**Lös 5, 6 och 7 med distinct** 
 + 
 +5. Skriv en fråga som visar vilka olika valutor som finns i tabellen. En rad per valuta. 
 + 
 +6. Skriv en fråga som visar vilka olika valörer som finns i tabellen. En rad per valör. 
 + 
 +7. Skriv en fråga som visar vilka olika valörer av varje valuta som finns i tabellen. En rad per valuta och valör. 
 + 
 +**Här måste ni använda group by** 
 + 
 +8. Om du vill veta hur många det finns av varje valör i en valuta, hur tar du
 reda på det? Ex på godkänt resultat för kr: reda på det? Ex på godkänt resultat för kr:
 <code> <code>
Line 27: Line 43:
   +----------------------+---------+   +----------------------+---------+
  </code>  </code>
-4. Om du vill veta hur mycket pengar det finns av valutan Kr. Hur ser frågan ut?+ 
 +9. Om du vill veta hur mycket pengar det finns av valutan Kr. Hur ser frågan ut? 
 + 
 +10. Skriv en fråga som visar hur mycket det finns av varje valörer i varje valuta. En rad per valuta och valör. 
 + 
 +11. Skriv en fråga som visar de valörer i valuta som det finns mer än 100000 av. Denna ska ni lösa på två sätt var av det ena ska vara ett subselect (MySQL subquery in the FROM) och det andra alternativet får ni komma på själva.
  
 Det finns en tabell som heter **Datum**.\\ Det finns en tabell som heter **Datum**.\\
Line 33: Line 54:
 <code sql>SET NAMES utf8</code> <code sql>SET NAMES utf8</code>
  
-5. Skriv en fråga som ger hur många olika årtal tabellen innehåller?+12. Skriv en fråga som ger en rad till svar och det är hur många rader tabellen innehåller? 
 + 
 +13. Skriv en fråga som ger en rad per år? 
 + 
 +14. Skriv en fråga som ger hur många olika årtal tabellen innehåller?
  
-6. Skriv en fråga som visar alla Lördagar under 1955 på formen ”1955-12-24”?+15. Skriv en fråga som visar alla Lördagar under 1955 på formen ”YYYY-MM-DD" tex 1955-1-1?
  
-7. Skriv en fråga som ger hur många lördagar det fanns 1955. +16. Skriv en fråga som ger hur många lördagar det fanns 1955. 
  
-8. Skriv en fråga som visar hur många år som har 366 dagar? (Obs! Ej godkänt att kolla om 29/2 finns, det kan vara dubbletter eller annat fel...)+17. Skriv en fråga som visar hur många år som har 366 dagar? (Obs! Ej godkänt att kolla om 29/2 finns, det kan vara dubbletter eller annat fel...)
  
 <php> <php>
Line 45: Line 70:
 <code SQL> <code SQL>
 # Förslag på lösningar... # Förslag på lösningar...
-4. select Valor as 'Valörer av kr', count(*) as antal from Pengar where Valuta='Kr' group by Valor; +13. select Valor as 'Valörer av kr', count(*) as antal from Pengar where Valuta='Kr' group by Valor; 
-5. select count(distinct ar) as Antal from Datum; +14. select count(distinct ar) as Antal from Datum; 
-6. select concat(Ar,'-',Manad,'-',Dag) Date from Datum WHERE veckodag='lö' and Ar=1955; +15. select concat(Ar,'-',Manad,'-',Dag) Date from Datum WHERE veckodag='lö' and Ar=1955; 
-7. select count(*) as antal from Datum where veckodag='lö' and Ar=1955; +16. select count(*) as antal from Datum where veckodag='lö' and Ar=1955; 
-8. select count(Dag) as antal from Datum group by Ar having antal=366;+17. select count(Dag) as antal from Datum group by Ar having antal=366;
  
 </code> </code>
 */ */
 </php> </php>