AI-hallucinaties uitgelegd: Waarom taalmodellen dingen verzinnen en hoe je deze kunt verminderen
Een taalmodel kan een zelfverzekerd, goed geschreven antwoord geven dat eenvoudigweg onjuist is. Ontdek waarom dit gebeurt, welke vormen het aanneemt en praktische manieren om dit te verminderen en te detecteren in uw eigen AI-functies.
- Er wordt een AI-hallucinatie weergegeven die plausibel klinkt, maar onwaar is of niet wordt ondersteund.
- Modellen voorspellen waarschijnlijke tekst. Ze hebben geen ingebouwde manier om te weten wat waar is.
- Gefundeerde antwoorden in vertrouwde bronnen, duidelijke aanwijzingen en geautomatiseerde controles verminderen hallucinaties.
- Geen enkele huidige techniek verwijdert ze volledig, dus belangrijke outputs moeten nog steeds worden geverifieerd.
Een support-chatbot vertelt een klant dat terugbetalingen 14 dagen duren. Het echte beleid luidt: 7. Het antwoord was vloeiend, beleefd en verkeerd. Dit is een AI-hallucinatie en het is een van de belangrijkste redenen waarom AI-functies zorgvuldig moeten worden ontworpen en getest.
Deze gids legt de oorzaken in heldere bewoordingen uit en richt zich op praktische preventie. De automatische controle aan het einde is een klein Python-script dat we hebben uitgevoerd op basis van voorbeeldantwoorden die we zelf hebben geschreven. Het werd niet uitgevoerd tegen een live AI-model.
Wat is een AI-hallucinatie?
Er is sprake van een hallucinatie wanneer een generatief AI-systeem inhoud produceert die feitelijk onjuist is, verzonnen is of niet wordt ondersteund door de verstrekte informatie, terwijl deze als waar wordt gepresenteerd. De term is een metafoor. Het model ziet geen dingen. Het genereert tekst die past in het patroon van een goed antwoord, zonder gebonden te zijn aan feiten.
Het gevaarlijke deel is het vertrouwen. Een gehallucineerd antwoord ziet er meestal precies zo uit als een juist antwoord, met dezelfde toon, structuur en details.
Waarom taalmodellen hallucineren
Een groot taalmodel wordt getraind om het volgende stuk tekst, een token, te voorspellen op basis van patronen in een enorme hoeveelheid trainingsgegevens. Daaruit volgen een aantal zaken:
- Plausibel is niet hetzelfde als waar. Het model leert hoe antwoorden er doorgaans uitzien. Als de feiten ontbreken, kan de meest waarschijnlijk ogende voortzetting nog steeds worden bedacht.
- Huizen en grenswaarden. Trainingsgegevens bevatten hiaten en eindigen op een bepaalde datum. Het model kan ontbrekende feiten aanvullen in plaats van te zeggen dat het het niet weet.
- Training beloont antwoorden. Onderzoek, waaronder een OpenAI-paper uit 2025 over waarom modellen hallucineren, stelt dat gangbare trainings- en evaluatiemethoden het raden belonen in plaats van het toegeven van onzekerheid, vergelijkbaar met een meerkeuzetoets zonder straf voor foute antwoorden.
- Dubbelzinnige aanwijzingen. Vage vragen nodigen het model uit om details aan te nemen.
- Lange of rommelige context. Belangrijke feiten kunnen over het hoofd worden gezien als ze verborgen zijn in lange invoer.
Veel voorkomende soorten hallucinaties
| Typ | Voorbeeld |
|---|---|
| Verzonnen feiten | Een verkeerde datum, getal of statistiek |
| Valse bronnen | Citaties, artikelen of URL’s die niet bestaan |
| Ontrouwe samenvattingen | Een samenvatting die claims toevoegt die niet in het document staan |
| Verzonnen code | Aanroepen van functies of pakketten die niet bestaan |
| Verkeerde redenering | Elke stap ziet er goed uit, maar de conclusie volgt niet |
| Vals vertrouwen | Een vraag beantwoorden waarop geen betrouwbaar antwoord bestaat |
Onderzoekers splitsen deze vaak op in feitelijkheidsfouten, die in tegenspraak zijn met de echte wereld, en trouw fouten, die in tegenspraak zijn met het bronmateriaal dat aan het model werd gegeven. Voor zakelijke apps die op uw eigen documenten zijn gebouwd, kunt u de betrouwbaarheid meestal het meest direct testen.
Verzonnen code verdient een speciale waarschuwing. Als een assistent voorstelt een pakket te installeren dat niet bestaat, kan een aanvaller een kwaadaardig pakket onder die naam publiceren. Controleer of elke voorgestelde afhankelijkheid reëel en vertrouwd is voordat u deze installeert.
Waar het er het meest toe doet
Een gehallucineerd filmfeit is onschadelijk. Een gehallucineerde medicijndosis, juridisch citaat, terugbetalingsbeleid of financieel cijfer is dat niet. Er zijn goed gerapporteerde gevallen waarin advocaten rechtszaken hebben ingediend met citaten uit de zaak, uitgevonden door AI-tools. Rangschik uw gebruiksscenario’s op basis van de kosten van een verkeerd antwoord en pas de sterkste controles toe als de kosten hoog zijn.
Hoe hallucinaties te verminderen
- Onderbouw het antwoord op betrouwbare gegevens. Geef het model de relevante feiten in plaats van te vertrouwen op het geheugen ervan.
- Sta ‘Ik weet het niet’ toe. Laat het model expliciet zeggen wanneer de informatie niet beschikbaar is, en beschouw dat als een goed resultaat.
- Wees specifiek. Duidelijke, beperkte vragen laten minder ruimte voor uitvindingen. Onze snelle technische handleiding behandelt dit gedetailleerd.
- Vraag om citaten of citaten uit de aangeboden bronnen en verifieer deze vervolgens automatisch.
- Gebruik gestructureerde uitvoer, zoals JSON met vaste velden, zodat antwoorden gemakkelijker te valideren zijn.
- Gebruik tools voor zaken waar modellen zwak in zijn, zoals berekeningen, datums en live opzoeken van gegevens.
- Houd een mens op de hoogte bij beslissingen waarbij veel op het spel staat.
Aarden met je eigen data
Retrieval-augmentedgeneration (RAG) is het meest voorkomende aardingspatroon. Het systeem doorzoekt uw documenten op passages die relevant zijn voor de vraag en neemt deze op in de prompt, met instructies om alleen vanuit die passages te antwoorden. Het reduceert verzonnen feiten scherp, maar het is geen geneesmiddel. Het model kan een passage nog steeds verkeerd lezen, passages verkeerd combineren of terugvallen op zijn eigen kennis, en de zoekstap kan de verkeerde documenten opleveren. Geaarde systemen hebben dus nog steeds controles nodig.
Tip: Registreer de opgehaalde passages naast elk antwoord. Wanneer een verkeerd antwoord wordt gerapporteerd, kunt u snel zien of het ophalen is mislukt of dat het model de goede context heeft genegeerd. De oplossing is voor iedereen verschillend.
Een eenvoudige automatische controle
Hier is een goedkope beveiliging die we hebben gebouwd: markeer elk getal in een antwoord dat niet in de brontekst voorkomt. Het is grof, maar cijfers als prijzen, dagen en limieten zijn precies waar kostbare hallucinaties de kop opsteken.
import re
SOURCE = """Refunds are paid within 7 days to the original payment method.
Orders over 1000 rupees ship free. Standard delivery takes 3 to 5 working days."""
def unsupported_numbers(answer, source):
found = set(re.findall(r"\d+", answer))
allowed = set(re.findall(r"\d+", source))
return sorted(found - allowed, key=int)
We hebben drie antwoorden getest die zijn geschreven om de typische modeluitvoer te imiteren:
grounded -> no unsupported numbers
hallucinated -> ['14', '500']
partly -> ['1']
Het “gehallucineerde” antwoord eiste een terugbetaling binnen 14 dagen en gratis verzending van meer dan 500 roepies, en beide cijfers werden betrapt. Het antwoord “gedeeltelijk” had correcte levertijden, maar voegde “of 1 dag met express” toe, wat het beleid nooit vermeldt, en dat werd ook betrapt. Een tweede controle verifieert of de geciteerde zinnen ook daadwerkelijk in de bron voorkomen:
{'paid within 7 days': True, 'no questions asked': False}
Deze controles hebben duidelijke grenzen. Ze missen verkeerde woorden, eenheden en niet-ondersteunde claims zonder cijfers, en ze zouden ten onrechte een correcte berekening markeren. Veel teams voegen een stap ‘LLM als rechter’ toe, waarbij een tweede model elke claim vergelijkt met de bronnen. Dat vangt meer op, maar het kan ook fout zijn, dus meet dat eens.
Testen op hallucinaties
Beschouw het hallucinatiepercentage als een kwaliteitsmaatstaf die je meet, en niet als een gevoel. Een praktische aanpak:
- Bouw een testset van echte vragen met bekende correcte antwoorden en bronnen.
- Voeg vragen toe die het systeem moet weigeren, omdat het antwoord niet in de gegevens staat.
- Scoor antwoorden op correctheid, trouw aan bronnen en passende weigeringen.
- Voer de set uit bij elke wijziging in aanwijzingen, modellen of ophaalinstellingen.
- Voorbeeldproductiegesprekken voor menselijke beoordeling.
De discipline van regressietesten is hier ook van toepassing: een vaste reeks cases, die bij elke verandering wordt uitgevoerd, waarbij de resultaten in de loop van de tijd worden vergeleken. Bij het kiezen van de manier waarop een systeem moet worden geaard, verklaart onze vergelijking van RAG versus fijnafstemming versus snelle engineering de afwegingen.
Advies voor dagelijkse gebruikers
- Verifieer feiten, cijfers, citaten en citaten uit de originele bron.
- Wees vooral voorzichtig met medische, juridische en financiële informatie.
- Plak de brontekst erin en vraag de assistent om alleen vanuit deze tekst te antwoorden.
- Vraag: “Hoe zelfverzekerd ben je, en waar is dit op gebaseerd?”, Maar onthoud dat het antwoord ook verkeerd kan zijn.
Kunnen hallucinaties geëlimineerd worden?
Niet met de huidige technologie. Nieuwere modellen en betere training hebben het aantal hallucinaties op veel benchmarks verminderd, en aarden helpt veel, maar elk systeem maakt nog steeds fouten. Het realistische doel is om fouten zeldzaam, gemakkelijk te detecteren en weinig impact te maken door middel van systeemontwerp, testen en duidelijke signalen naar gebruikers.
Hallucinaties in AI-coderingstools
Ontwikkelaars worden dagelijks geconfronteerd met hallucinaties in codeerassistenten: een methode die niet bestaat in een klasse, een verouderde configuratieoptie of een zelfverzekerde verklaring van een fout die in werkelijkheid door iets anders wordt veroorzaakt. De verdedigingen zijn degene die je al gebruikt voor menselijke code. Compileer of typecontrole het resultaat, voer de tests uit en lees de officiële documentatie voor elke API die u nog niet eerder hebt gebruikt. Wees extra voorzichtig met beveiligingsgevoelige code, zoals authenticatie, cryptografie en invoervalidatie, waarbij plausibel ogende code op subtiele wijze onveilig kan zijn. Beschouw AI-suggesties als een concept van een snelle maar onbetrouwbare collega: vaak nuttig, nooit automatisch correct.
Tot slot
Hallucinaties komen voort uit de manier waarop taalmodellen werken: ze genereren waarschijnlijke tekst, geen gecontroleerde feiten. Je kunt ze niet uitschakelen, maar je kunt er wel omheen ontwerpen. Grond antwoorden op basis van vertrouwde gegevens, laat het model zeggen “Ik weet het niet”, voeg automatische controles toe voor de details die er toe doen en meet de resultaten voortdurend.
Veelgestelde vragen
Wat is een AI-hallucinatie?
Het is wanneer een AI-systeem valse of niet-ondersteunde informatie produceert en deze als waar presenteert, zoals een verzonnen statistiek, citaat of beleidsdetail.
Waarom hallucineren AI-modellen?
Taalmodellen voorspellen waarschijnlijke tekst op basis van patronen, niet op basis van geverifieerde feiten. Hiaten in de trainingsgegevens, vage aanwijzingen en training die gokken beloont, maken hallucinaties waarschijnlijker.
Stopt RAG hallucinaties?
Het verkleint deze door het model betrouwbare informatie te geven, maar houdt ze niet tegen. Het model kan bronnen nog steeds verkeerd lezen en bij het ophalen kunnen de verkeerde documenten worden geretourneerd.
Hoe kun je AI-hallucinaties detecteren?
Vergelijk antwoorden met brondocumenten, controleer cijfers en citaten automatisch, gebruik een tweede model om claims te verifiëren en bekijk voorbeelden met mensen.
Zullen AI-hallucinaties ooit verdwijnen?
De tarieven dalen naarmate de modellen verbeteren, maar geen enkele huidige methode kan deze volledig verwijderen. Belangrijke resultaten behoeven nog steeds controles en menselijke beoordeling.
Blijf leren
Hulp nodig met testen, WordPress of SEO?
We helpen teams betere software te leveren en hun sites te laten groeien. Vertel ons waar u mee bezig bent en wij stellen een duidelijke volgende stap voor.
Meer handleidingen over testen, AI en moderne ontwikkeling
Genoten van dit artikel? Kies een onderwerp en ga direct naar onze nieuwste tutorials.
AI-hallucinaties uitgelegd: waarom taalmodellen dingen verzinnen en hoe ze te verminderen
AI-hallucinaties uitgelegd: wat ze zijn, waarom taalmodellen ze produceren, veelvoorkomende typen, hoe je ze kunt verminderen met aarding en aanwijz…
Lees artikel →DevOpsOmgevingsvariabelen uitgelegd: .env-bestanden, geheimen en configuratie goed gedaan
Omgevingsvariabelen uitgelegd met Python-voorbeelden die we hebben uitgevoerd: ze lezen en instellen, waarom elke waarde een string is, .env-bestand…
Lees artikel →SoftwareontwikkelingAPI-snelheidsbeperking uitgelegd: algoritmen, headers en afhandeling van 429-fouten
API-snelheidsbeperking uitgelegd met een simulatie die we hebben uitgevoerd: token-bucket, vast venster, schuifvenster, 429 reacties, headers van sn…
Lees artikel →TestautomatiseringSpotten in Python: unittest.mock, patch en de fouten die tests doen liegen
Spotten in Python met unittest.mock, getest: Mock en return_value, side_effect, patchen waar een naam wordt gebruikt, spec en autospec, spotdatums e…
Lees artikel →SoftwaretestenCodedekking uitgelegd: lijn versus filiaaldekking en wat 100% werkelijk betekent
Codedekking uitgelegd met een echte dekking.py-run: dekking van lijnen, vertakkingen en condities, een rapport lezen, waarom 100% dekking nog steeds…
Lees artikel →Databases & SQLDELETE versus TRUNCATE versus DROP in SQL: verschillen, terugdraaien en wanneer elk te gebruiken
DELETE versus TRUNCATE versus DROP uitgelegd met geteste SQL: wat elk verwijdert, terugdraaien, triggers, identiteitsreset, snelheid en hoe PostgreS…
Lees artikel →Databases & SQLSQL-weergaven uitgelegd: creëer, gebruik en vermijd de valkuilen, met voorbeelden
SQL-weergaven uitgelegd met query's die we hebben uitgevoerd: een weergave maken, live resultaten, kolommen verbergen, prestaties, bijwerkbare en ge…
Lees artikel →SoftwareontwikkelingTypeScript-interface versus type: echte verschillen, getest met de compiler
TypeScript-interface versus type, gecontroleerd met de echte compiler: wat beide kunnen doen, wat slechts één kan doen, samenvoegen van declaraties,…
Lees artikel →SoftwareontwikkelingPython *args en **kwargs uitgelegd: flexibele functies met duidelijke voorbeelden
Python *args en **kwargs uitgelegd met code die we hebben uitgevoerd: in- en uitpakken, parametervolgorde, argumenten die alleen trefwoorden en posi…
Lees artikel →SoftwareontwikkelingPython Lambda-functies: syntaxis, echt gebruik en wanneer u ze niet moet gebruiken
Python lambda-functies uitgelegd met code die we hebben uitgevoerd: syntaxis, sorteren met sleutel, kaart en filter, sluitingen, de laat-bindende va…
Lees artikel →Kunstmatige intelligentieWat zijn AI-agenten? Hoe ze werken, met een eenvoudige agentloop die u kunt uitvoeren
Wat zijn AI-agenten? Een duidelijke gids voor de agentenlus, tools, geheugen en vangrails, met een kleine Python-lus die we hebben uitgevoerd, echte…
Lees artikel →DevOpsMonitoring versus waarneembaarheid: het echte verschil, met logboeken, statistieken en sporen
Monitoring versus waarneembaarheid uitgelegd: bekende en onbekende fouten, logboeken, statistieken en sporen, een walkthrough voor afrekenincidenten…
Lees artikel →DevOpsDocker-volumes versus bindingsmounts: bewaar containergegevens op de juiste manier
Docker-volumes versus bind-mounts uitgelegd: waarom containergegevens verdwijnen, benoemde volumes, bind-mounts, tmpfs, Compose-voorbeelden, back-up…
Lees artikel →TestautomatiseringTDD versus BDD: belangrijkste verschillen, één functie die op beide manieren is gebouwd en wanneer deze moet worden gebruikt
TDD versus BDD uitgelegd met één kortingsfunctie die in beide richtingen is gebouwd: rood-groen-refactor met code die we hebben uitgevoerd, gegeven-…
Lees artikel →SoftwaretestenGebruikersacceptatietesten (UAT): proces, checklist en echte voorbeelden
Gebruikersacceptatietesten uitgelegd: wie voert het uit, hoe het verschilt van QA, een proces in zeven stappen, een UAT-testcase-sjabloon, een check…
Lees artikel →Databases & SQLSQL NULL-waarden uitgelegd: IS NULL, COALESCE, NULLIF en de te vermijden vallen
SQL NULL-waarden uitgelegd met query's die we hebben uitgevoerd: logica met drie waarden, IS NULL, COALESCE, NULLIF, hoe aggregaten, joins en sorter…
Lees artikel →Databases & SQLSQL CASE WHEN-instructie: syntaxis, echte voorbeelden en veelvoorkomende fouten
SQL CASE WHEN uitgelegd met vragen die we hebben uitgevoerd: eenvoudige en doorzochte formulieren, volgorde van de voorwaarden, draaipunten met SUM,…
Lees artikel →SoftwareontwikkelingWat is JWT? JSON-webtokens uitgelegd met een werkend voorbeeld
Wat is JWT? JSON Web Tokens uitgelegd: de drie delen, een token gebouwd en waarmee is geknoeid in de code die we hebben uitgevoerd, JWT versus sessi…
Lees artikel →SoftwareontwikkelingJavaScript-gebeurtenislus uitgelegd: call-stack, microtaken en timers met voorbeelden
De JavaScript-gebeurtenislus uitgelegd met code die we hebben uitgevoerd: call-stack, taak- en microtask-wachtrijen, waarom setTimeout 0 niet onmidd…
Lees artikel →SoftwareontwikkelingPython-generatoren en opbrengst uitgelegd: bespaar geheugen met echte voorbeelden
Python-generatoren en opbrengst uitgelegd met code die we hebben uitgevoerd: hoe ze pauzeren en hervatten, gemeten geheugenbesparingen, pijplijnen, …
Lees artikel →Kunstmatige intelligentieWat zijn inbeddingen? Vectoren en cosinusovereenkomst eenvoudig uitgelegd
Wat zijn insluitingen? Een gids in duidelijke taal over vectoren, cosinusovereenkomst en semantisch zoeken, met een klein voorbeeld dat we hebben ui…
Lees artikel →DevOpsImplementatie van blauwgroen versus kanarie: verschillen, afwegingen en hoe te kiezen
Blauw-groen versus kanarie-implementatie uitgelegd: hoe elk werkt, kosten, risico's en terugdraaien, stabiele gebruikersbucket die we hebben getest,…
Lees artikel →TestautomatiseringSchilferige tests: wat de oorzaak ervan is en hoe u ze voorgoed kunt oplossen
Zwakke tests uitgelegd met demo's die we hebben uitgevoerd: de belangrijkste oorzaken, hoe je er een kunt bevestigen en diagnosticeren, goede oploss…
Lees artikel →SoftwaretestenBelastingtesten versus stresstesten: verschillen, statistieken en k6-voorbeelden
Belastingtesten versus stresstesten uitgelegd: wat elk bewijst, piek- en soak-tests, de statistieken die er toe doen, waarom gemiddelden misleiden, …
Lees artikel →SoftwaretestenTestcase versus testscenario: belangrijkste verschillen, voorbeelden en wanneer deze te gebruiken
Testcase versus testscenario uitgelegd: duidelijke definities, een tabel naast elkaar, één functie voor het opnieuw instellen van wachtwoorden, over…
Lees artikel →Databases & SQLOptimalisatie van SQL-query's: lees uitvoeringsplannen en repareer langzame query's, met timing
Optimalisatie van SQL-query's getest op een miljoen rijen: lees uitvoeringsplannen, voeg de juiste indexen toe, repareer niet-sargeerbare filters, g…
Lees artikel →Databases & SQLSQL UNION versus UNION ALL: verschillen, voorbeelden en geteste prestaties
SQL UNION versus UNION ALL uitgelegd met de query's die we hebben uitgevoerd: duplicaten, de regels volgen beide, een echte databug, gemeten prestat…
Lees artikel →SoftwareontwikkelingJavaScript Fetch API-tutorial: GET, POST, foutafhandeling en time-outs
Een JavaScript Fetch API-tutorial getest tegen een lokale server: GET en POST, waarom 404 niet gooit, een herbruikbare helper, queryreeksen, time-ou…
Lees artikel →SoftwareontwikkelingPython-bestandsverwerking: lezen, schrijven, CSV, JSON en pathlib met voorbeelden
Het verwerken van Python-bestanden uitgelegd met code die we hebben uitgevoerd: open modi, met het lezen van grote bestanden, CSV, JSON, pathlib, bi…
Lees artikel →SoftwareontwikkelingPython-klassen en -objecten: OOP-zelfstudie met echte voorbeelden
Python-klassen en -objecten uitgelegd met code die we hebben uitgevoerd: __init__, methoden, klasse versus instantie-attributen, overerving, eigensc…
Lees artikel →Kunstmatige intelligentieWat is een groot taalmodel? Hoe LLM's werken, uitgelegd zonder de hype
Wat is een groot taalmodel? LLM's uitgelegd in duidelijke taal: tokens, inbedding, aandacht, training, temperatuur- en contextvensters, een kleine d…
Lees artikel →DevOpsLinux-opdrachten voor beginners: de essentiële terminalgids met voorbeelden
Linux-opdrachten voor beginners, gegroepeerd op taak: navigatie, bestanden, logboeken bekijken, grep, pipelines, machtigingen, processen en archieve…
Lees artikel →TestautomatiseringSelenium versus toneelschrijver: belangrijkste verschillen, code vergeleken en welke te kiezen
Selenium versus Playwright vergeleken: architectuur, wachten, browser- en taalondersteuning, debuggen, dezelfde test in beide tools, migratieadvies …
Lees artikel →SoftwaretestenEquivalentiepartitionering: testontwerptechniek uitgelegd met uitgewerkte voorbeelden
Equivalentiepartitionering uitgelegd: hoe je geldige en ongeldige partities kunt vinden, uitgewerkte voorbeelden voor leeftijden, wachtwoorden en ko…
Lees artikel →SoftwaretestenErnst versus prioriteit bij het testen van software: verschillen, matrix en echte voorbeelden
Ernst versus prioriteit bij het testen van software uitgelegd: duidelijke definities, een vierwegmatrix met voorbeelden, niveauschalen, wie deze bep…
Lees artikel →Databases & SQLTutorial voor SQL-subquery's: typen, gecorreleerde subquery's en BESTAAN met voorbeelden
Een SQL-subquery-tutorial met query's die we hebben uitgevoerd: scalaire, IN-, FROM- en SELECT-subquery's, gecorreleerde subquery's, EXISTS, de NOT …
Lees artikel →Databases & SQLSQL-transacties en ACID uitgelegd: COMMIT-, ROLLBACK- en isolatieniveaus
SQL-transacties en ACID uitgelegd met een bankoverschrijving die we hebben uitgevoerd: COMMIT, ROLLBACK, savepoints, locks, isolatieniveaus, dirty r…
Lees artikel →SoftwareontwikkelingGit merge vs rebase: verschillen, voorbeelden en wanneer je wat gebruikt
Git merge vs rebase uitgelegd met echte logoutput, een vergelijkingstabel, de gouden regel van rebase en een veilige teamwerkwijze.
Lees artikel →SoftwareontwikkelingPython list comprehension: syntaxis, voorbeelden en wanneer je het vermijdt
Python list comprehension uitgelegd: syntaxis, filteren, if-else, geneste lussen, gemeten tijden en wanneer een gewone for-lus beter is.
Lees artikel →Databases & SQLSQL JOIN uitgelegd met voorbeelden (Inner, Left, Right, Full)
Begrijp SQL joins stap voor stap met voorbeeldtabellen en queries: INNER, LEFT, RIGHT, FULL, CROSS en SELF, plus veelgemaakte fouten en prestatietips.
Lees artikel →