Toon posts:

[oracle forms] subqueries*

Pagina: 1
Acties:

Verwijderd

Topicstarter
Kzit met volgend probleem
ik heb een datablock komend van tabel STUDENTEN

in deze block (met displayed items=12) moeten de STUDENTEN.STUDENTENNUMMERS komen die komen uit een select waarin de where gebruikt maakt van verwijzingen uit andere tabellen.

Nu kunnen we op datablock niveau in de WHERE CLAUSE geen gegevens uit andere tabellen gebruiken vb. uit de tabel PUNTEN.

Hoe kan ik dit oplossen?? hartelijk dank

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Waarom zou dat niet kunnen?
studentnummer in (select ... from punten... )

Who is John Galt?


  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Gebruik zoals justmental zegt een subquery in de WHERE CLAUSE.

Eventueel kan je ook in een ON-EXECUTE-QUERY (zo heet 'ie dacht ik) de query helemaal schrijven. Dan ben je volgens mij wel het default gedrag van je block kwijt

Verwijderd

Topicstarter
ok, thx ik wist niet dat je daarin een subquery kon gebruiken
_/-\o_

Verwijderd

Topicstarter
nu heb ik nog een klein probleem. De where clause klopt perfect, alleen moet eigenlijk van de STUDENTENNUMMERS een distinct genomen worden, omdat anders door een gekende reden de studentennummers verschillende keren hetzelfde verschijnen. Maar... hoe kan ik dit dan doen

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Ik zie het probleem niet, maar het gemis aan distinct kun je middels een group by omzeilen.

Who is John Galt?


Verwijderd

Topicstarter
Ik zal even verduidelijken:
In de tabel STUDENTEN zitten gewoon de STUDENTENNUMMERS,NAAM,....
In de tabel PUNTEN vb (vereenvoudigd).
LIDNR VAKNR PUNT
3 5 12
3 6 17
4 5 15

de DATABLOK (PUNTEN) heeft 1 DATABASE ITEM(12keer gedisplayed), nl (PUNTEN.LIDNR), en 2 display items, waar oa. de NAAM wordt weergegeven.

DUS de WHERE CLAUSE is in orde maar ik krijg in de velden sommige LIDNR enkele keren...

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Volgens mij zit je dan met een verkeerde base table.
Waarom is studenten niet je basetable?

Who is John Galt?


Verwijderd

Topicstarter
ja, zoals ik het uitleg is het inderdaad zo, maar er zijn nog andere factoren waarom ik dit zo doe. Maar in ieder geval na de group by werkt het wel goed. Echt hartelijk bedankt! Dit zijn zo van de prullen waardoor jij me een hele hoop tijd uitspaart, thx!

Verwijderd

Topicstarter
Nu heb ik nog een ander probleempje. Ik had tot nu toe één enkel databaseitem in deze datablok, en nog een display-item voor de naam. Maar nu zou ik nog een database item willen weergeven uit die tabel. Maar als ik deze toevoeg in de blok kan hij ineens geen records meer vinden... Hoe kan ik dit oplossen

Verwijderd

je zou beter heel de boel wegkieperen en opnieuw beginnen :*)
neenee, ben blij dat het je gelukt is!
Pagina: 1