Forberedelse til kodeintervjuer · leksjon

Lese et skjema under press

Lær å raskt tolke et ukjent tabelldiagram og stille de riktige oppklarende spørsmålene i et liveintervju.

Leksjon 4 av 413 trinn

Lese et skjema under press er en gratis leksjon i Forberedelse til kodeintervjuer på CoddyKit. Dette er leksjon 4 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Forberedelse til kodeintervjuer, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Forberedelse til kodeintervjuer inneholder totalt 4 leksjoner.

Ferdigheten i et intervju i sanntid

I et ekte intervju får du utlevert et ukjent databaseskjema og blir bedt om å skrive spørringer mot det der og da. Denne leksjonen gir deg en rolig og gjentakbar metode for å lese et skjema under tidspress.

Trinn 1: Lag en oversikt over tabellene

Trinn 1: Lag en oversikt over tabellene. Les bare navnene, og gjett hvilken entitet hver tabell representerer. Et navn som setter sammen to entiteter, for eksempel order_items, er vanligvis en koblingstabell.

Trinn 2: Finn primærnøklene

Trinn 2: Finn primærnøklene, som vanligvis heter id eller <table>_id. Nøkkelen forteller deg tabellens granularitet, altså hva én rad representerer, slik at sammenføyninger ikke multipliserer radene.

Trinn 3: Følg fremmednøklene

Trinn 3: Følg fremmednøklene. En kolonne som customer_id peker på customers.id. Tegn forbindelsene som piler; de er sammenføyningsbanene du skal bruke.

-- Inferred join path from the foreign keys
SELECT *
FROM order_items oi
JOIN orders o   ON o.id = oi.order_id
JOIN customers c ON c.id = o.customer_id;

Trinn 4: Finn kardinaliteten ut fra nøklene

Trinn 4: Finn kardinaliteten ut fra nøklene. Tabellen som inneholder fremmednøkkelen, er mange-siden. Tabellen den peker på, er én-siden. Én kunde, mange bestillinger.

Trinn 5: Legg merke til nullverdi og datatyper

Trinn 5: Legg merke til om NULL er tillatt, og hvilke datatyper som brukes. En fremmednøkkel som kan være NULL, antyder ofte en LEFT JOIN. Kontroller også om en dato faktisk er av typen DATE, eller om et beløp faktisk er numerisk.

Trinn 6: Still de riktige avklarende spørsmålene

Trinn 6: Still avklarende spørsmål. "Hvilken status betyr fullført?" "Er e-postadressen unik?" Intervjuere legger ofte inn tvetydigheter for å se om du spør eller arbeider videre uten å avklare dem.

Gjennomgått eksempel: Et skjema på 60 sekunder

Sett alt sammen: Les fire e-handelstabeller raskt, og angi granulariteten og fremmednøklene for hver av dem. På under ett minutt kjenner du alle sammenføyningsbanene, og alle spørsmål kan besvares.

Fra lesing til spørring

Blir du bedt om å finne "samlet inntekt per kunde"? Fordi du først fulgte nøklene, skriver spørringen nesten seg selv: Inntekten finnes på linjeelementnivå og kobles videre til kunden.

SELECT c.id, c.name, SUM(oi.qty * oi.unit_price) AS revenue
FROM customers c
JOIN orders o      ON o.customer_id = c.id
JOIN order_items oi ON oi.order_id = o.id
GROUP BY c.id, c.name
ORDER BY revenue DESC;

Vanlige feller du bør se etter

Vær oppmerksom på forutsigbare feller: Feil granularitet som teller samme verdi flere ganger, en inner join som fjerner rader, eller at e-post behandles som en nøkkel. De seks trinnene beskytter deg mot alle disse.

Det lønner seg å tenke høyt

Det lønner seg å tenke høyt. Fortell hva du gjør: "Dette ser ut som e-handelstabeller. Granulariteten er ett linjeelement. Jeg kobler videre til kunden." Da får intervjueren mulighet til å korrigere deg tidlig.

Hurtigsjekk

Bruk kardinalitet til å resonnere om et ukjent databaseskjema.

Oppsummering

Oppsummer de seks trinnene: Lag en oversikt over tabellene, finn primærnøkler og granularitet, følg fremmednøkler, finn kardinaliteten, kontroller om NULL er tillatt, og still deretter spørsmål. Les først, skriv etterpå.

Gratis å komme i gang

Lær deg Forberedelse til kodeintervjuer med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
90
Leksjoner
360

Ofte stilte spørsmål

Er leksjonen «Lese et skjema under press» gratis?

Ja – hele teksten i «Lese et skjema under press» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Forberedelse til kodeintervjuer-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Forberedelse til kodeintervjuer inneholder totalt 4 leksjoner.

Hva lærer jeg i «Lese et skjema under press»?

Lær å raskt tolke et ukjent tabelldiagram og stille de riktige oppklarende spørsmålene i et liveintervju. Du øver på Forberedelse til kodeintervjuer med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Forberedelse til kodeintervjuer?

Ingen tidligere erfaring er nødvendig. Forberedelse til kodeintervjuer på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.

Hvor lang tid tar leksjonen «Lese et skjema under press»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Forberedelse til kodeintervjuer-leksjonen?

Ja. Alle Forberedelse til kodeintervjuer-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Hva er SQL, og hvorfor spør intervjuere om det?
  2. Logisk rekkefølge for spørringskjøring
  3. Primærnøkler, fremmednøkler og begrensninger
  4. Lese et skjema under press
← Tilbake til Forberedelse til kodeintervjuer