Toon posts:

[Acces]namen en kavels willekeurig koppelen in query

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb twee tabellen in een database: Namen (2865 records) en Kavels (2865 records). Nu wil ik deze willekeurig aan elkaar koppelen d.m.v. een query.

Hoe kan ik dat het beste aanpakken, ik kan veel in Acces, alleen hier heb ik nog nooit mee gewerkt, dus weet niet echt waar ik moet zoeken (ja google en gotsearch, maar daar werd ik niet wijzer van...)

Verwijderd

Ik denk niet dat dat zo in 1 query kan, maar met een stukje code moet het toch niet moeilijk zijn ?

Wat je zou kunnen doen is aan 1 tabel een veld toevoegen, en daar een willekeurig nummer aan toevoegen. Daarna deze tabel op volgorde van dat nummer openen, en dan 1 voor 1 records uit de andere tabel er aan koppelen.

Verwijderd

Topicstarter
ja maar het moet dan 2865 keer...

ik wilde graag een naam uit de linkerbak, één nummer uit de rechterbak en samenvoegen, dat willekeurig 2865 keer.

Verwijderd

Ik denk niet dat je snapt wat ik bedoel.

Neem tabel 1 en voeg aan de velddefinitie daar dan een numeriek veld aan toe ( double )
Ga alle record van tabel 1 af en zet in dat veld een random nummer ( rnd functie )

open dan deze tabel, gesorteerd op dat willekeurige nummer ( je records staan hierdoor in willekeurige volgorde). neem dan record 1 van tabel 1 en koppel deze aan record1 van tabel2, etc. etc.

Verwijderd

Topicstarter
ik heb deze standaardwaarde gekozen voor dat veld:

Int((2865-1+1)*Rnd()+1)

(omdat het tussen de 0001 en de 2865 moet zijn)

nu pakt ie dit alleen voor nieuwe records, en niet voor bestaande records?

[ Voor 80% gewijzigd door Verwijderd op 21-05-2004 21:16 ]


Verwijderd

Ik zal je de code niet voorkauwen, maar in ieder geval een indicatie geven

In code :

- Open je tabel ( hint : openrecordset )
- Ga in een lus alle records af, en zet terwijl je dat doet, een willekeurig getal in het nieuwe veld ( hint : Rnd )
- als je klaar bent, open je de tabel opnieuw, maar dan gesorteerd op het nieuwe veld. Om dat de waarden die je erin hebt gezet willekeurig waren, zullen de records nu in willekeurige volgorde staan.
- Open daarnaast je andere tabel, en koppel dan record 1 van tabel1 aan record1 van tabel2

als ik hier nog dieper op in moet gaan, dan begint het wel erg op een scriptrequest te lijken.
Pagina: 1