Avatar billede Ulrich Seniormester
20. marts 2021 - 08:29 Der er 6 kommentarer og
2 løsninger

Udtræk fra to kolonner hvor den ene er ens og den anden afviger.

MSDB og ASP.
Har to kolonner hvor den ene er Adresse og den anden er EmailAdresse.
Jeg har brug for at trække ud hvor Adresse er ens men EmailAdresse ikke er ens - dog kun hvor forskelligheden i EmailAdresse er at den ene står der noget i og den anden er tom.
Hvis EmailAdresse er ens eller EmailAdresse ikke er ens eller EmailAdresse begge er tomme, skal den ikke trækkes ud.
Kun hvis der er noget i den ene EmailAdresse og den anden EmailAdresse er tom.

Har denne, men den tager også hvor EmailAdresse ikke er ens:
"SELECT * FROM Adresseliste WHERE Adresse IN (SELECT Adresse FROM Adresseliste GROUP BY Adresse HAVING COUNT(Adresse) > 1) AND EmailAdresse IN (SELECT EmailAdresse FROM Adresseliste GROUP BY EmailAdresse HAVING COUNT(EmailAdresse) = 1) ORDER BY Adresse ASC"
Avatar billede Gustav Seniormester
20. marts 2021 - 09:12 #1
En adresse kan ikke være "ens". To (eller flere) adresser kan være ens eller forskellige.
Så du må hellere omformulere, så det giver nogen mening.
Avatar billede Ulrich Seniormester
20. marts 2021 - 10:23 #2
Prøver at vise det:

Adresse        EmailAdresse
Skal trækkes ud:
Østergade    abc@mail.dk
Østergade   

Skal ikke trækkes ud:
Vesterled   
Vesterled

Skal ikke trækkes ud:
Givevej        opa@mail.dk
Givevej        opa@mail.dk

Skal ikke trækkes ud:
JensAlle    def@mail.dk
JensAlle    ghj@mail.dk
Avatar billede Gustav Seniormester
20. marts 2021 - 10:54 #3
Prøv denne:
SELECT *
FROM Adresseliste
WHERE Adresse IN
    (SELECT Adresse
    FROM Adresseliste
    WHERE EmailAdresse Is Null
    GROUP BY Adresse
    HAVING COUNT(*) = 1)   
ORDER BY Adresse ASC
Avatar billede terry Ekspert
20. marts 2021 - 11:17 #4
Gustav' SQL Looks good, and if you only want one line for each address then
SELECT *
FROM Adresseliste
WHERE Adresse IN
    (SELECT Adresse
    FROM Adresseliste
    WHERE EmailAdresse Is Null
    GROUP BY Adresse
    HAVING COUNT(*) = 1)
And Not EmailAdresse  Is Null
ORDER BY Adress
Avatar billede terry Ekspert
20. marts 2021 - 11:22 #5
Select ....ORDER BY Adresse ASC
Avatar billede terry Ekspert
20. marts 2021 - 12:59 #6
Thanks for accepting my answer as solution, but I think Gustav should be rewarded too ;-)
Avatar billede Ulrich Seniormester
20. marts 2021 - 13:41 #7
Done.
Avatar billede terry Ekspert
20. marts 2021 - 15:35 #8
Thanks
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

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





CIO
Har du rost din mellemleder i dag? Snart er de uddøde - og det er et tab
Computerworld mener: Mellemledere lever livet farligt: Topledelsen får konstant ideer med skiftende hold i virkeligheden, og moden går mod flade agile organisationer. Men mellemlederen er en overset hverdagens helt med et kæmpe ansvar. Her er min hyldest til den ofte latterliggjorte mellemleder.
Job & Karriere
Eva Berneke stopper som topchef i KMD og flytter til Paris: Her er KMD's nye topchef
Efter syv år på posten som topchef for KMD forlader Eva Berneke selskabet. Nu flytter hun med familien til Paris, hvor hun vil fortsætte sit bestyrelsesarbejde. KMD har allerede afløser på plads.
White paper
Sådan prioriterer IT-sikkerhedschefernes indsatsen i 2021
I denne undersøgelse fra F-Secure giver knap 2.000 ledende personer på tværs af hele Europa deres bud på, hvor de vil prioritere indsatsen i år – og hvad de opfatter som virksomhedernes mest presserende udfordringer på cybersikkerhedsfronten.