NebulaMedlem sedan feb. 20082 inlägg
Hej!
Behöver hjälp i hur jag skall resonera. Frågan är enkel men jag har kört fast just på användningen av AS. Frågan lyder: summera antal artiklar skrivna av Guillou i tidskriften Folket i Bild. Använd SQL-alias för att förse svaret med lämplig kolumnrubrik (fältnamn)
Jag tänker på två sätt:
-
Jag plockar informationen från en mellantabell som jag kallar T2F (Tidskrift2Författare) där främmande nycklar bland annat är tidskiftsnamn och författarnamn: SELECT COUNT (*) FROM T2F WHERE författarnamn AS f="Guillou" AS g
-
....eller måste jag skapa en vy?
Jag är ny på det här. all hjälp uppskattas! :)
LarsGMedlem sedan dec. 200012 465 inlägg
Strängar i SQL anges som
'Guillou'
Det du kallar SQL-alias används enligt
SELECT COUNT (*) as numberOfArticles
Det används inte i en whereklausul.
NebulaMedlem sedan feb. 20082 inlägg
Ok, här kommer ett nytt försök. Jag tänker såhär (lite mer schematiskt):
Jag har en tabell "1" med följande fält
a
b
c
Uppgiften innebär att jag skall räkna ut en summa ur en begärd del av en kolumn i tabellen
Enligt uppgiften så skall jag använda SQL-alias för att förse svaret med lämplig kolumnrubrik
Jag skapar därför en vy för att avgränsa tabellen mot de fält jag vill hämta uppgifter från. Ger dessa alias. Summerar endast de objekt som benämns som x, vilka finns i vyn i fältet med rubriken b_f (ursprungligen i b)
Förslag:
CREATE VIEW view_1 AS SELECT a, b FROM 1 WHERE a='x'
SELECT a AS a_n, b AS b_f FROM 1
SELECT b_f,SUM(a_n) FROM x GROUP BY b_f
Är jag på rätt spår?
LarsGMedlem sedan dec. 200012 465 inlägg
Varför vill du skapa en vy? Det är väl bara detta dom är ute efter.
select b as b_f, sum(a) as a_n
from t
group by b
När du använder
select sum(a)
så får inte resultatkolumnen namnet a.