Avatar billede hej45 Nybegynder
29. maj 2001 - 15:11 Der er 9 kommentarer og
1 løsning

WHERE

SELECT DISTINCT [forretningsforbindelser].[forsikringsrådgiverid], [forretningsforbindelser].[kundeid], [forretningsforbindelser].[kundenavn]
FROM ((forretningsforbindelser INNER JOIN [ff-rel] ON [forretningsforbindelser].[kundeid]=[ff-rel].[kundeid]) INNER JOIN forsikringsaftaler ON [ff-rel].[policeid]=[forsikringsaftaler].[policeid]) INNER JOIN roller ON [ff-rel].[rolleid]=[roller].[rolleid]
WHERE [forretningsforbindelser].[forsikringsrådgiverid]=[indtast forsikringsrådgiverid] And [forsikringsaftaler].[policetype] IN (152,153) And [roller].[rolleid]=301;

dette virker næsten...
der skal være 4 kriterier iorden
forsikrådgid
policetype=152
policetype=153
policeid=301

problemet er at policetype 152 og 153 enkeltvis accepteres, og ikke som jeg vil at de begge skal være opfyldt for at en linie vises
Avatar billede nuno Nybegynder
29. maj 2001 - 15:13 #1
prøv at fjerne DISTINCT - den udvælger jo kun een linie, når du bruger den.

/nuno
Avatar billede nuno Nybegynder
29. maj 2001 - 15:13 #2
eller forstår jeg ikke spsm rigtigt?
Avatar billede hej45 Nybegynder
29. maj 2001 - 15:18 #3
jeg tror ik\' du forstår. jeg vil netop kun udskrive en linie for hver gang en forsikrådg har en kunde som har begge disse policetyper tilknyttet.
problemet med koden er at hvis en kunde har rolleid 301 og policetype 152 udskrives en linie, og det er jo forkert for linien skal først udskrives hvis også kunden har policetype 153
Avatar billede nuno Nybegynder
29. maj 2001 - 15:18 #4
som jeg umiddelbart ser det - så er der jo ikke noget i vejen med SQL-sætningen - dvs. når den virker med ENTEN 152 ELLER 153 som kriterie - men ikke med dem BEGGE - så er det fordi ingen søgeresultater kan opfylde samtlige kriterier???

Har du 100% tjekket, at der SKAL være et søgeresultat, som vil kunne opfylde samtlige kriterier?

/nuno
Avatar billede nuno Nybegynder
29. maj 2001 - 15:22 #5
aaah ok - nu er jeg med....... grubler lige lidt :)

Avatar billede hej45 Nybegynder
29. maj 2001 - 15:24 #6
lige nu finder den både 152 og 153, og den ene kunde som har begge.

men alle dem som kun har 152 skal ikke være der. det samme gælder alle dem som kun har 153

det er som om sætningen
[forsikringsaftaler].[policetype] IN (152,153)
finder ELLER istedet for OG
Avatar billede hej45 Nybegynder
29. maj 2001 - 15:24 #7
ok
Avatar billede afshin Nybegynder
29. maj 2001 - 23:01 #8
prøv at erstatte
[forsikringsaftaler].[policetype] IN (152,153)
med
[forsikringsaftaler].[policetype] = 152 AND
[forsikringsaftaler].[policetype] = 153

det skulle løse problemet, såvidt jeg kan se.
Avatar billede hej45 Nybegynder
30. maj 2001 - 11:17 #9
jeg stiller lige spørgsmål igen. og nu må jeg vidst hellere forklare mig ordentlig
Avatar billede hej45 Nybegynder
30. maj 2001 - 11:18 #10
dobler næste spml op
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
Kategori
Computerworld tilbyder specialiserede kurser i database-management

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