07. november 2003 - 12:15Der er
11 kommentarer og 1 løsning
Fjern dubletter
Jeg genererer et PDF dokument ud fra følgende select:
SELECT DISTINCT Firma.FirmaID, Kontaktperson.FirmaID AS Expr1, Titel.Titel, Firma.Navn, Kontaktperson.Navn AS Navn2, Firma.Adresse, Firma.Adresse2, Firma.Postnr, Postnumre.ByNavn FROM Firma INNER JOIN Postnumre ON Firma.Postnr = Postnumre.PostNr LEFT OUTER JOIN Kontaktperson ON Firma.FirmaID = Kontaktperson.FirmaID LEFT OUTER JOIN Titel ON Firma.TitelID = Titel.TitelID WHERE GruppeID = 20 OR GruppeID = 22
Problemet er at hvis et firma er med i to grupper kommer det med to gange på labels... Hvordan kan jeg undgå dette??
SELECT DISTINCT Firma.FirmaID, Titel.Titel, Firma.Navn, Kontaktperson.Navn AS Navn2, Firma.Adresse, Firma.Adresse2, Firma.Postnr, Postnumre.ByNavn, FirmaGruppe.GruppeID FROM Firma INNER JOIN FirmaGruppe ON Firma.FirmaID = FirmaGruppe.FirmaID INNER JOIN Postnumre ON Firma.Postnr = Postnumre.PostNr LEFT OUTER JOIN Kontaktperson ON Firma.FirmaID = Kontaktperson.FirmaID LEFT OUTER JOIN Titel ON Firma.TitelID = Titel.TitelID WHERE GruppeID = 20 OR GruppeID = 22
remove the fields which are giving duplicates! DISTINCT means that the records which are the same are only shown once, so if there are some fields which differ then it is obviose that they are NOT distinct!
Kunne dette problem løses ved at lave en Stored Procedure som oprettede en temp tabel med records fra de forskellige grupper og så derefter lavede en Select Distinct?
jems take a look at the data in the result! Are you 100% sure that ALL FIELDS are the same for the records you say are DUPLICATE? If they are then SELECT DISTINCT should remove duplicate records. If they are NOT then you MUST remove the columns (fields) from the query which are NOT the same!
A stored procedure wouldnt help IF the records are NOT the same! Which record(s) would you want to remove?
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.