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
Next revision Both sides next revision
birds_databaser [2014-04-14 20:58]
Joakim Forsgren
birds_databaser [2019-10-17 20:25]
Joakim Forsgren
Line 1: Line 1:
-====== SELECT frågor repetition ======+====== SELECT frågor med join ======
 Nu skall nu använda min databas **jf_select**. (login: jf_select, passwd: jf_select) Nu skall nu använda min databas **jf_select**. (login: jf_select, passwd: jf_select)
 När det står tips så är det något nytt, det räcker inte enbart med det som står som tips. Ni kommer behöva läsa i manualen för att lyckas skulle jag tro :-)\\ När det står tips så är det något nytt, det räcker inte enbart med det som står som tips. Ni kommer behöva läsa i manualen för att lyckas skulle jag tro :-)\\
-**OBS!** Ni får bara ställa en fråga för att ta fram ert svar, spara de SQL-frågor ni ställer i en textfil.\\+**OBS!** Ni får bara ställa en fråga för att ta fram ert svar, spara de SQL-frågor ni ställer i en textfil (mysql4.txt). När ni är klar “commitar” och “pushar” ni filen.\\
 Följande tabeller finns i databasen jf_select (i princip lika i varje fall…) \\ Följande tabeller finns i databasen jf_select (i princip lika i varje fall…) \\
 {{:selectuppgifter_html_m3687461c.png|}} {{:selectuppgifter_html_m3687461c.png|}}
Line 101: Line 101:
 +--------------------+-------+ +--------------------+-------+
 </code> </code>
 +  - Skulle du redan ha kommit hit så börja gör en sida som visa relevant data från denna data. Intressanta vyer att visa kan vara "topplista", "toppplista per år", "alla kryss", "en användares alla kryss", "vilka som har kryssat en fågel". Man kan ha massa länkar vid tex topplistan kan kan klicka på en användare och få se alla fåglar som denna användare har kryssat och klickar man sen på en fågel kan man se alla som har sett denna fågel... osv. Gör så mycket du hinner... 
 +
  
 <php> <php>
Line 108: Line 110:
 SELECT * FROM Birds; SELECT * FROM Birds;
  
-2.+9.
 SELECT * FROM Observations  SELECT * FROM Observations 
 WHERE UserID=3; WHERE UserID=3;
  
-3.+10.
 SELECT * FROM Users INNER JOIN Observations USING(UserID) SELECT * FROM Users INNER JOIN Observations USING(UserID)
 WHERE Login='JF'; WHERE Login='JF';
  
-4.+11.
 SELECT Name,COUNT(UserID) as Antal  SELECT Name,COUNT(UserID) as Antal 
 FROM Birds INNER JOIN Observations USING(BirdID)  FROM Birds INNER JOIN Observations USING(BirdID) 
Line 123: Line 125:
 ORDER BY Antal DESC; ORDER BY Antal DESC;
  
-SELECT Name,COUNT(UserID) as Antal  FROM Birds INNER JOIN Observations USING(BirdID)  WHERE UserID= GROUP BY BirdID  having Antal>4 ORDER BY Antal DESC;+12. 
 +SELECT Name,COUNT(UserID) as Antal  FROM Birds INNER JOIN Observations USING(BirdID)  WHERE UserID= GROUP BY BirdID  having Antal>4 ORDER BY Antal DESC;
  
-5.+14.
 SELECT CONCAT(FirstName,' ',LastName) as Name,COUNT(DISTINCT BirdID) as Antal  SELECT CONCAT(FirstName,' ',LastName) as Name,COUNT(DISTINCT BirdID) as Antal 
 FROM Users INNER JOIN Observations USING(UserID)  FROM Users INNER JOIN Observations USING(UserID) 
Line 131: Line 134:
 ORDER BY Antal DESC; ORDER BY Antal DESC;
  
-6.+15.
 SELECT Name,COUNT(DISTINCT UserID) as Antal  SELECT Name,COUNT(DISTINCT UserID) as Antal 
 FROM Birds INNER JOIN Observations USING(BirdID)  FROM Birds INNER JOIN Observations USING(BirdID) 
Line 137: Line 140:
 GROUP BY BirdID ORDER BY Antal DESC; GROUP BY BirdID ORDER BY Antal DESC;
  
-7.+16.
 SELECT CONCAT(FirstName,' ',LastName) as Name,COUNT(DISTINCT BirdID) as Antal  SELECT CONCAT(FirstName,' ',LastName) as Name,COUNT(DISTINCT BirdID) as Antal 
 FROM Users INNER JOIN Observations USING(UserID)  FROM Users INNER JOIN Observations USING(UserID) 
Line 144: Line 147:
 ORDER BY Antal DESC; ORDER BY Antal DESC;
 </code> </code>
 +
 */ */
 </php> </php>