Avatar billede mccookie Seniormester
01. september 2015 - 14:30 Der er 6 kommentarer

Udtræk fra 3 tabeller, hvor der er 2 rækker i en - Men alt skal udskrives som en linje!

SELECT    UserGroups.GroupName, Users.FirstName, Users.LastName, Users.Address, Users.City, Users.PostalCode, Users.Email, Users.WebPassword, Cards.CardIdentity
FROM        Users INNER JOIN
                      UserGroups ON Users.FkUserGroup = UserGroups.PkGroupNumber INNER JOIN
                      Cards ON Users.PkUserNumber = Cards.FkUserNumber
WHERE    (UserGroups.GroupName LIKE 'Be%')


Dette felt kan indeholde 2 poster og derfor vil jeg at denne blive udskrevet som ØVRIG DATA: brik 1 Brik 2
Avatar billede Slettet bruger
01. september 2015 - 14:50 #1
Hvis det er CardIdentity der er 2 af, kan det løses sådan:

WITH C AS
(
SELECT FkUserNumber, CardIdentity
,row_number() over(partition by FkUserNumber) Nr
FROM Cards
)
SELECT UserGroups.GroupName, Users.FirstName, Users.LastName, Users.Address, Users.City, Users.PostalCode, Users.Email, Users.WebPassword
,(SELECT CardIdentity from C
  where FkUserNumber = Users.PkUserNumber
    and Nr = 1
) Id1
,(SELECT CardIdentity from C
  where FkUserNumber = Users.PkUserNumber
    and Nr = 2
) Id2
FROM Users INNER JOIN UserGroups
ON Users.FkUserGroup = UserGroups.PkGroupNumber
WHERE    (UserGroups.GroupName LIKE 'Be%')
Avatar billede mccookie Seniormester
01. september 2015 - 14:52 #2
Hej,

Kan jeg køre den fra mit MS Management studio?
Avatar billede Slettet bruger
01. september 2015 - 15:15 #3
Ja det bør du kunne
Avatar billede mccookie Seniormester
01. september 2015 - 15:22 #4
Msg 4112, Level 15, State 1, Line 3
The ranking function "row_number" must have an ORDER BY clause.
Avatar billede Slettet bruger
01. september 2015 - 15:56 #5
Så skal du bare tilføje ORDER BY i funktionen:
F.eks. row_number() over(partition by FkUserNumber order by CardIdentity) Nr
Avatar billede mccookie Seniormester
05. november 2015 - 11:48 #6
Læg svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester