SQL Abfrage - nach 5 gleichen Werten in Spalte

xxfreestyle20xx

Grünschnabel
Hallo an alle und danke für eure Hilfe..
es geht um eine SQL Abfrage (SQL Server 2008 R2) welche dann nach Excel exportiert wird.

und zwar habe ich in einer Spalte Nummern die Teils immer gleich sind.
z.b
55
55
55
56
56
56
usw
nun soll nach jeder 5. unterschiedlichen nummer also in unserem fall ab 60 eine leere zelle eingefügt werden.
Ist das mit SQL überhaupt möglich?

mfg
 
Aus Access. Wird aber für SQL Server ähnlich sein. Der MOD-Befehl und der UNION sind wichtig.
SQL:
-- Testatabell
SELECT *
FROM T405717;

id
--
 1
 1
 2
 3
 4
 5
 5
 5
 6
 7
 8
 8
 8
 9
10
11
12
12
SQL:
-- Test. Hier alle 3 Zeilen, nicht alle 5
SELECT id, id AS txt
FROM T405717
UNION ALL SELECT DISTINCT id, NULL AS txt
FROM T405717
WHERE id mod 3 = 0
ORDER BY id, txt;

id | txt
---|----
 1 |   1
 1 |   1
 2 |   2
 3 |    
 3 |   3
 4 |   4
 5 |   5
 5 |   5
 5 |   5
 6 |    
 6 |   6
 7 |   7
 8 |   8
 8 |   8
 8 |   8
 9 |    
 9 |   9
10 |  10
11 |  11
12 |    
12 |  12
12 |  12
 
Danke komme jedoch noch nicht weiter ist eine etwas komplexere abfrage.. :/ kannst du mir da vl weiterhelfen
Die abfrage

SQL:
SELECT
Dense_RANK() Over (Order by pkn.name3 asc) As Belegnummer,
Row_number ()  OVER (Partition BY pkn.name3 Order by (rko.belegnr)asc) AS Position,


     ART.Bez3 as Teil_und,
     REPLACE (RPO.Mg,'.',',') as Menge,
   

     Case
        When  rpo.Me = 'STK' then 1 
        When rpo.Me = 'LFM' then 26
        When rpo.Me = 'MIN' then 28
     end,   
    
     '?' AS Lagerort,
     '14' AS Lieferbedingung,
     '' AS Gewicht,
     '' AS Verpackungsgewicht,
     '' AS Wunschtermin,
     ''AS Liefertermin,
     '' AS TransPortZeitAenderSelect,
     '' AS Zeiteinheit_tt,
    Ltrim (AKO.FremdNr) as Bezeichnung_und,
     '' AS Bezeichnung_und,
     '' AS Bezeichnung_und,
     '#'+AKO.BelegNr as Bezeichnung_und,
     REPLACE (RPO.Preis,'.',',') as Einzelpreis,
     '' AS wertm_R_Z,
     '' AS wertm_R_Z,
     '' AS wm_Rab_ZuArt,
     '' AS wm_Rab_ZuArt,
     '' AS R_Z_und,
     '' AS R_Z_und,
     '' AS R_Z_und,
     '' Rab_ZuArt_und,
     '' Rab_ZuArt_und,
     '' Rab_ZuArt_und,
     PKN.Name3 as GWName,
     RKO.Belegnr as ABC_ReNr,
     LSK.BelegNr as LieferscheinNr,
     AKO.Info
         

   
FROM     OpAusgangsrechnung RKO  WITH (NOLOCK)
    INNER JOIN OpArPos RPO                 WITH (NOLOCK) ON RPO.ArId = RKO.ArId
    INNER JOIN OpArArt RCA                 WITH (NOLOCK) ON RCA.ArtId = RKO.ArArtId
    LEFT OUTER JOIN OpKunde KUN         WITH (NOLOCK) ON KUN.KundId = RKO.AuftraggeberId
    INNER JOIN OpKunde KRE                 WITH (NOLOCK) ON KRE.KundId = RKO.FaktEmpfaengerId
    INNER JOIN OpKunde KRG                 WITH (NOLOCK) ON KRG.KundId = RKO.ReguliererId
    LEFT OUTER JOIN OpArtikel ART         WITH (NOLOCK) ON ART.ArtikelId = RPO.ArtikelId
    LEFT OUTER JOIN OpAuftrag AKO         WITH (NOLOCK) ON AKO.AufId = RPO.AufId
    LEFT OUTER JOIN OpLfsPos LSP        WITH (NOLOCK) ON LSP.PosId = RPO.LfsPosId
    LEFT OUTER JOIN OpLieferschein LSK     WITH (NOLOCK) ON LSK.LfsId = LSP.LfsId
    INNer Join OpPerson PKN             WITH (NOLOCK) ON PKN.PersonId = LSK.WarenEmpfaengerId
    LEFT OUTER JOIN OpKostenstelle KST    WITH (NOLOCK) ON KST.KostenstellenId = RPO.KostenstellenId


   
WHERE (Rko.belegnr = 107141)  and (AKO.Info is not null)
order by pkn.name3 asc
 
WHERE (Rko.belegnr = 107141) and (AKO.FremdNr MOD (5=0)) and (AKO.Info is null)

WHERE (Rko.belegnr = 107141) and (AKO.FremdNr) MOD 5=0 and (AKO.Info is null)

Meldung 4145, Ebene 15, Status 1, Zeile 1
In der Nähe von 'MOD' wurde ein nicht boolescher Ausdruck in einem Kontext angegeben, in dem eine Bedingung erwartet wird.

egal wie ich es schreibe bekomme immer fehler :/
 

Neue Beiträge

Zurück