SQL0815 0 Geschrieben 17. März 2015 Melden Teilen Geschrieben 17. März 2015 Hallo zusammen, ich bin langsam am verzweifeln und hoffe hier auf die Lösung zu können. Ich habe folgendes Problem: Ich habe eine Abfrage, welche Benutzerberechtigungen abfragt. Nun kann es vorkommen, dass der Nutzer mehrere Rechte hat, da diese aufeinander aufbauen. Wenn ich meine Abfrage starte, bekomme ich zwei Zeilen ausgegeben: Userid...Recht...LfdNr Userid001...S...1 Userid001...SA...2 Ich hätte es jetzt gerne so, dass nur die Zeile mit SA ausgegeben wird. Ich habe nur leider keine Ahnung, wie ich das hinbekomme. Eigentlich würde es langen, wenn immer nur die höhere ldfNr ausgegeben wird, aber ich habe das mit max(lfdNr) in der Abfrage nicht geschafft. Hat jemand ne Idee, wie ich das lösen kann? Vielen Dank. Frank Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 17. März 2015 Melden Teilen Geschrieben 17. März 2015 (bearbeitet) Zeig die komplette Abfrage und ein Tabellenerstellungsscript für die zugrunde liegende Tabelle, dann kann man dir leichter helfen. bearbeitet 17. März 2015 von Sunny61 Zitieren Link zu diesem Kommentar
SQL0815 0 Geschrieben 17. März 2015 Autor Melden Teilen Geschrieben 17. März 2015 Hallo, danke für die schnelle Antwort. Leider ist das nicht so einfach möglich, da die Werte aus mehrere Tabellen zusammengeführt werden für die Ausgabe z.B. von Abteilung, Nutzungsgebühren und Ort. :( Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 17. März 2015 Melden Teilen Geschrieben 17. März 2015 OK, wie sieht deine bisherige Abfrage aus? Und woher kommt SA? Zitieren Link zu diesem Kommentar
SQL0815 0 Geschrieben 17. März 2015 Autor Melden Teilen Geschrieben 17. März 2015 Meine Abfrage sieht so aus: SELECT Veranlagung.OORT, ZTabelle1.JAHR, VG.VOLUMEN, VG.TYP, AVG(VG.PFLICHTLEERUNGEN) AS 'Leerungen', SUM(VG.ZGEBUEHR) AS 'Gebühr', ZTabelle1.KDEBITOR, ZTabelle1.Recht FROM Veranlagung AS Veranlagung INNER JOIN ZTabelle1 AS ZTabelle1 ON Veranlagung.LFDNROBJ = ZTabelle1.MaxvonLFDNROBJ AND Veranlagung.ARADRESSAT = ZTabelle1.ARADRESSAT INNER JOIN VG AS VG ON Veranlagung.AR = VG.ARVERANL where (ZTabelle1.JAHR = 2014) AND (ZTabelle1.Recht LIKE '%A') AND (ZTabelle1.KDEBITOR = 6610207968) GROUP BY Veranlagung.OORT, ZTabelle1.JAHR, VG.VOLUMEN, VG.TYP, ZTabelle1.KDEBITOR, ZTabelle1.MaxvonLFDNROBJ, ZTabelle1.Recht SA kommt aus ZTabelle1.Recht Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 17. März 2015 Melden Teilen Geschrieben 17. März 2015 AND ZTabelle1.Recht LIKE '%SA'... So kriegst Du nur die Einträge mit SA. Zitieren Link zu diesem Kommentar
SQL0815 0 Geschrieben 17. März 2015 Autor Melden Teilen Geschrieben 17. März 2015 Nabend. ich brauche aber eine Übersicht mit allen Benutzern. Es gibt dann halt welche, welche A, SA oder EA haben. Leider werden die dann doppelt oder dreifach angezeigt. Ist leider so in Programm hinterlegt. Ich hatte es mal versucht mit einem weiteren Select in der Where Schleife, aber da ist dann nichts mehr rausgekommen... Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.