WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Sorteringsproblem (https://www.wn.se/forum/showthread.php?t=150)

linsten 2003-05-27 22:31

Provade att posta nedanstående text på eForum, utan att få den hjälp jag behöver. Kom ihåg när (om) ni svarar att jag är i stort helt nollad när det kommer till ASP (jag använder ju till och med Frontpage!).


Jag har nämligen ett problem med just ett SQL-uttryck som jag använder på min lilla filmsida. Problemet kan ni se här:
http://www.movienet.nu/filmbokstav.asp?BokstavID=11

Alltså, är två regissör kopplade till en film listas filmen två gånger. Så vill jag inte ha det.
Jag hade mycket hellre fått de till något i stil med "av NAMN & NAMN" - om det är två stycken.

Jag kan väldigt lite om just SQL och databaskopplingar vilket leder till att jag behöver hjälp med detta - om det ens går att lösa.

Befintligt SQL:
SELECT Filmer.ID,Person.PersonID,Filmer.Titel, Filmer.Premiärår, Filmer.Genre, Filmer.Infotext, Filmer.Bild5, Filmer.Betyg, Person.NAMN, Filmer.Bokstav
FROM Person INNER JOIN (Filmer INNER JOIN Regi_Relation ON Filmer.ID = Regi_Relation.FilmID) ON Person.PersonID = Regi_Relation.RegiID
WHERE (Filmer.Bokstav = '::BokstavID::')
ORDER BY Filmer.Titel;

WHERE-satsen ser lite konstig ut för att Frontpage ska köpa frågan, men ni förstår nog ändå.

Tacksam för hjälp!

Mvh
Peter Linsten

Clarence 2003-05-28 04:05

Lägga till en;
Group by Filmer.Titel
precis innan order by borde göra att filmen bara kommer upp en gång, fast bara med en regissör. Då jag inte är väl inläst i några databassystem för windows (och du dessutom inte säger vilket du använder) kan jag nog inte hjälpa mer än så.

linsten 2003-05-28 13:40

Tack för svaret.
Kan ju då passa på att säga att det är Access 2002 jag använder.

Filip 2003-05-28 18:25

Jag hade nog använt mig av två SQL-satser, för att skriva ut alla regisörer, som är kopplade till en film.

En liten pseudokod:

$SQL1 = "SELECT Filmer.Filmnamn, Filmer.FilmID FROM Filmer";
WHILE ("Skriver ut varje rad från SQL1") {
print Filmer.Filnamn . " - ";
$SQL2 = "SELECT * FROM Regissörer WHERE Regissörer.FilmID = Filmer.FilmID";
WHILE ("Skriver ut varje rad från SQL2") {
print Regissörer.Namn
}
}

Jag hoppas att du förstår min tankegång.
Jag vet inte hur ASP fungerar. Men om du hade frågat om PHP, så hade jag kunnat hjälpa dig mer nogrant.

Lycka till!


Alla tider är GMT +2. Klockan är nu 03:11.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson