Match ongerelateerde tabellen (MySQL)

Uit De Vliegende Brigade
Ga naar: navigatie, zoeken

Het klinkt als een oxymoron, maar soms wil ik ongerelateerde tabellen matchen. Bv. als ik nieuwe producten van EAN-nummers wil voorzien: Dan heb ik een tabel producten en een tabel ean, en die hebben geen relatie, maar toch wil ik daar iets mee doen.

Oplossing: Volgnummer invoegen

Zoiets als dit:

  1. Maak van beide tabellen een tijdelijk kopie, waarvan je de records wil matchen (dus alle rijen van producten waar een EAN-nummer aan moet worden toegevoegd, en evenveel rijen uit de EAN-tabel met beschikbare EAN-nummers)
  2. Voeg aan beide tabellen een pk-kolom toe die zichzelf nummert vanaf 1
  3. Match de tabellen op pk-nummer & wissel data uit
  4. Gebruik deze twee tijdelijke tabellen om de achterliggende brontabellen bij te werken.