Toon posts:

[SQL] selectie uit twee tabellen *

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil een selectie maken. Hiervoor moet ik twee tabellen gebruiken. Gedeeltelijk is de selectie wel gelukt. Het laatste stukje lukt echter niet. Kunnen jullie eens meekijken :?

In de tabel sub3 zijn of de velden straat, postcode en woonplaats gevuld of het veld adresnr. Als straat, postcode en woonpl gevuld zijn, wil ik deze in mijn selectie terug zien. Zijn deze velden leeg, dan is het adresnr gevuld. Dit adresnr kan ik koppelen met de tabel adr. In mijn selectie wil ik dan de straat, postcode en woonpl_boco uit de tabel adr zien. Ik heb zelf onderstaand selectie gemaakt. Het probleem is echter dat ik nu voor iedere straat, postcode en woonplaats twee kolommen heb. Is het mogelijk om deze gegevens in één kolom te krijgen?

Alvast bedankt voor de moeite!


Gegevens tabel sub3_subjektadres

adresnr number(10)
straat varchar2(40)
postcode varchar2(6)
woonpl varchar2(40)

Gegevens tabel adr_adres

adresnr number(10)
straat varchar2(40)
postcode varchar2(6)
woonpl_boco varchar2(24)

Mijn selectie statement

1 select sub.straat
2 , sub.postcode
3 , sub.woonpl
4 , adr.straat
5 , adr.postcode
6 , adr.woonpl_boco
7 from adres adr
8 , subject sub
9* where adr.adresnr(+)=sub.adresnr
SQL> /

  • Shadowman
  • Registratie: Januari 2002
  • Niet online
SELECT adr.straat, adr.postcode, adr.woonpl_boco FROM adres AS adr INNER JOIN subject AS sub ON adr.adresnr=sub.adresnr
^ ?

IIG hier staat wat over stringconcatenation als je dat wil.

  • RwD
  • Registratie: Oktober 2000
  • Niet online

RwD

kloonikoon

Foei Puckie, je vergeet er bij te zeggen dat het Oracle SQL is, toch?

Maar misschien heb nu wel een oplossing, ik weet niet of het werkt, mn ORACLE boek ligt thuis ;)

Als je nu in je select statement alle gelijke velden zo plaatst:
code:
1
2
3
select (sub.straat & adr.straat) as straat
, (sub.postcode & adr.postcode) as postcode
, (sub.woonpl & adr.woonpl_boco) as woonpl
Wellicht werkt dat, mits Oracle 8 dat string concatenatie pikt

Je moet er wel zeker van zijn dat de velden uit tabel 1 nooit gevuld zijn als je ze uit tabel 2 haalt. (En andersom)

[ Voor 124% gewijzigd door RwD op 05-08-2004 12:47 ]


Verwijderd

Topicstarter
Het is inderdaad Oracle SQL. (Oracle 8i)

Ik heb de oplossing van RwD geprobeerd.

select (sub.straat & adr.straat) as straat
, (sub.postcode & adr.postcode) as postcode
, (sub.woonpl & adr.woonpl_boco) as woonplaats
from sub3_subjektadres sub
, adr_adres adr
where adr.adresnr(+) = sub.adresnr

Dat levert het volgende op:

Voer waarde voor adr in:

Kan ik hier toch nog iets aan veranderen of gaat het gewoon niet wat ik wil?

[ Voor 12% gewijzigd door Verwijderd op 05-08-2004 14:02 ]


  • glashio
  • Registratie: Oktober 2001
  • Laatst online: 23-05 18:57

glashio

C64 > AMIGA > PC

Misschien heb je iets aan deze post.

> Google Certified Searcher
> Make users so committed to Google that it would be painful to leave
> C64 Gospel
> [SjoQ] = SjoQing


Verwijderd

Topicstarter
Dank je :+

Ik kan de selectie nu precies maken zoals ik in gedachten had.

Ipv select (sub.straat & adr.straat) as straat

select (sub.straat || adr.straat) as straat
Pagina: 1