Print side | Luk vindue

Problemer med Union forespørgsel

Udskrevet fra: Dansk Access Forum
Kategori: Hjælp til Access
Forum navn: Forespørgsler og SQL scripts (Query)
Forum beskrivelse: Spørgsmål relateret til SQL og forespørgsler
Web-adresse: https://www.accessforum.dk/forum_posts.asp?TID=76
Udskrevet den: 28-04-2024 kl. 07:38


Emne: Problemer med Union forespørgsel
Besked fra: 350677
Emne: Problemer med Union forespørgsel
Posteringsdato: 02-12-2015 kl. 11:16
Hej Access Forum

Jeg håber at nogen kan hjælpe mig med det her:

Jeg er ved at oprette en UNION forepørgsel i SQL, med følgende kode:

SELECT
[Carus-DIBS+Teller-Bank].Id1,
[Carus-DIBS+Teller-Bank].TRANSNR,
[Carus-DIBS+Teller-Bank].REGUSER,
[Carus-DIBS+Teller-Bank].NAME,
[Carus-DIBS+Teller-Bank].AMOUNT,
[Carus-DIBS+Teller-Bank].CUR_ID,
[Carus-DIBS+Teller-Bank].DEPARTUREDATE,
[Carus-DIBS+Teller-Bank].CC_NUM

FROM [Carus-DIBS+Teller-Bank]

UNION

SELECT
[Fakturakunder 22/10].Id1,
[Fakturakunder 22/10].TRANSNR,
[Fakturakunder 22/10].REGUSER,
[Fakturakunder 22/10].NAME,
[Fakturakunder 22/10].AMOUNT,
[Fakturakunder 22/10].CUR_ID,
[Fakturakunder 22/10].DEPARTUREDATE,
[Fakturakunder 22/10].CC_NUM

FROM [Fakturakunder 22/10];

UNION

SELECT
[Rabatkortkunder 22/10].Id1,
[Rabatkortkunder 22/10].TRANSNR,
[Rabatkortkunder 22/10].REGUSER,
[Rabatkortkunder 22/10].NAME,
[Rabatkortkunder 22/10].AMOUNT,
[Rabatkortkunder 22/10].CUR_ID,
[Rabatkortkunder 22/10].DEPARTUREDATE,
[Rabatkortkunder 22/10].CC_NUM

FROM [Rabatkortkunder 22/10]

UNION

SELECT
[Kontant 22/10].Id1,
[Kontant 22/10].TRANSNR,
[Kontant 22/10].REGUSER,
[Kontant 22/10].NAME,
[Kontant 22/10].AMOUNT,
[Kontant 22/10].CUR_ID,
[Kontant 22/10].DEPARTUREDATE,
[Kontant 22/10].CC_NUM

FROM [Kontant 22/10]

UNION

SELECT [Tilbagebetalinger 22/10].Id1,
[Tilbagebetalinger 22/10].TRANSNR,
[Tilbagebetalinger 22/10].REGUSER,
[Tilbagebetalinger 22/10].NAME,
[Tilbagebetalinger 22/10].AMOUNT,
[Tilbagebetalinger 22/10].CUR_ID,
[Tilbagebetalinger 22/10].DEPARTUREDATE,
[Tilbagebetalinger 22/10].CC_NUM

FROM [Tilbagebetalinger 22/10]


Problemet er at når jeg kører den får jeg fejlmeldingen "Datatyper i JOIN-udtrykket stemmer ikke overens".

Alle de anvendte datasæt er forespørgsler baseret på ét større datasæt, hvorefter de er opdelt efter kriterier baseret på anden data. Derfor forsøger jeg nu at kombinere de mange forspørgsler til et sæt med udelukkende relevant data.

Jeg har kontrolleret at dataudtrykkene stemmer overens i de oprindelige datasæt.

Nogen som har et godt forslag, eller som kan identificere problemet?

Med venlig hilsen Nils



Svar:
Besked fra: hkh
Posteringsdato: 02-12-2015 kl. 13:51
Skal der ikke være en 'where sætning' der finder de data du ønsker

-------------
Hans


Besked fra: 350677
Posteringsdato: 07-12-2015 kl. 12:32
Det tror jeg ikke burde ikke være nødvendigt, den følgende kode for en anden UNION forspørgsel virker uden problemer og indeholder heller ikke en WHERE sætning.
 
SELECT DISTINCT
[Teller-Bank-Carus].Id1,
[Teller-Bank-Carus].TRANSNR,
[Teller-Bank-Carus].REGUSER,
[Teller-Bank-Carus].NAME,
[Teller-Bank-Carus].AMOUNT,
[Teller-Bank-Carus].CUR_ID,
[Teller-Bank-Carus].DEPARTUREDATE,
[Teller-Bank-Carus].CC_NUM
FROM [Teller-Bank-Carus]
UNION ALL
SELECT
[Carus - Alle - Bank].Id1,
[Carus - Alle - Bank].TRANSNR,
[Carus - Alle - Bank].REGUSER,
[Carus - Alle - Bank].NAME,
[Carus - Alle - Bank].AMOUNT,
[Carus - Alle - Bank].CUR_ID,
[Carus - Alle - Bank].DEPARTUREDATE,
[Carus - Alle - Bank].CC_NUM
FROM [Carus - Alle - Bank];
 
Derudover burde der heller ikke være nogen grund til at indeholde et kriterie, da alt uvedkommende data er screenet ud vha. tidligere forespørgsler.
 
Andre forslag til hvad som kunne være galt?  


Besked fra: hkh
Posteringsdato: 16-12-2015 kl. 12:44
Så må der være et af felterne hvor typen ikke er ens.

-------------
Hans



Print side | Luk vindue