SQL kolommen naast elkaar

Status
Niet open voor verdere reacties.

barendrecht82

Gebruiker
Lid geworden
24 mrt 2013
Berichten
230
Hoi

Ik krijg de volgende uitwerking niet naast elkaar..

Code:
SELECT        dbo.grtbk.reknr AS Glaccount, dbo.grtbk.oms25_0 AS Description, CASE WHEN bal_vw = 'B' THEN 'Balance sheet' WHEN bal_vw = 'W' THEN 'Profit & Loss' ELSE 'Unknown' END AS [Balance Type], 
                         dbo.grtbk.Class_01, dbo.grtbk.Class_02, AccountClasses_1.Description_0 AS Expr3, AccountClasses_1.Description_0 AS EXPR4, dbo.AccountClasses.Description_0
FROM            dbo.grtbk WITH (NOLOCK) LEFT OUTER JOIN
                         dbo.AccountClasses ON dbo.grtbk.Class_02 = dbo.AccountClasses.AccountClassCode LEFT OUTER JOIN
                         dbo.AccountClasses AS AccountClasses_1 ON dbo.grtbk.Class_01 = AccountClasses_1.AccountClassCode
WHERE        (dbo.grtbk.reknr LIKE '% 16000001%')


Zie excel wat ik zou willen..
 

Bijlagen

  • vraagstuk.xlsx
    12,3 KB · Weergaven: 16
Ik zou je aanraden om je databasestructuur te normaliseren. Er is geen enkele reden om velden horizontaal uit te breiden met class-namen.
 
De logica ontgaat me een beetje. Waar is "Belastingen en premies sociale verzekeringen" bijvoorbeeld gebleven?
Het gaat kennelijk over drie kolommen en (in het voorbeeld) twee rijen. Dus in theorie 6, eventueel verschillende, waardes. Hoe kom je dan naar drie waardes?

Om je te kunnen helpen zou een voorbeeld database wel handig zijn. Hoeven we de database niet na te bouwen :D.

Hebben we het trouwens wel over Access?
 
Laatst bewerkt:
Dit is heel duidelijk een T-SQL query, waarschijnlijk van een reporting dataset. Buiten de reporting is de NOLOCK hint immers redelijk gevaarlijk (lezen van dirty data). Een voorbeeld van de database is dus iets moeilijker, tenzij je een BU copy-only maakt. Om de omschrijvingen naast elkaar te krijgen moet je de joins eens nakijken: je gebruikt 2 keer hetzelfde veld AccountClasses_1.Description_0 als Expr3 en Expr4, dus die hebben natuurlijk dezelfde waarde. Het lijkt erop dat class01 2 omschrijvingen heeft in tabel AccountClasses, wat dus ook zou resulteren in 2 lijnen.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan