power Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 Hei Jeg har to tabeller Tabell 1: .---------------------------. | id | brukernavn | navn | :---------------------------: | 1 | ol | Ola | | 2 | ka | Kari | | 3 | fi | Finn | `---------------------------´ Tabell 2: .-------------------------. | uid | endret | item | :-------------------------: | 1 | 1 | Stol | | 1 | 2 | Stol | | 3 | 2 | Krakk | `-------------------------´ uid er da brukeren sin ID i fra tabell 1. Det er også "endret" som symboliserer hvem som sist endret på tabell 2 Hvordan kan jeg med en spørring hente ut innholdet i tabell 2 men bytte ut iden med navnet direkte? Takk for all hjelp Lenke til kommentar
roac Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 Skolearbeid? Sjekk opp inner join Lenke til kommentar
arex1337 Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 "SELECT t1.navn, t2.endret, t2.item FROM t1, t2 WHERE t1.id = t2.uid"? Lenke til kommentar
Manfred Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 du bare glemte det som stod i posten over om JOIN? Det er STYGT å "joine" tabeller uten å joine de! (godt sagt) Lenke til kommentar
kaffenils Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 du bare glemte det som stod i posten over om JOIN? Det er STYGT å "joine" tabeller uten å joine de! (godt sagt) Er det bare meg, eller har andre på følelsen at det er MySQL sin skyld at denne "styggedommen" har returnert fra de døde? Lenke til kommentar
arex1337 Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 Istedenfor å kommentere hvor ironisk det er å skulle ta SQL-grammatikk-tips fra en som ikke behersker norsk grammatikk engang, skal jeg bare anta at du faktisk kan forskjellen på implisitt og eksplisitt join-notasjon og respektere at vi har forskjellige meninger om "best practice". Lenke til kommentar
Manfred Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 Hvor fant du feil i den norske grammatikken sa du? Og slutt å være så furten over at vi kommenterer at spørringen din er avleggs, gammel og ekstremt ineffektiv. Lenke til kommentar
roac Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 Istedenfor å kommentere hvor ironisk det er å skulle ta SQL-grammatikk-tips fra en som ikke behersker norsk grammatikk engang, skal jeg bare anta at du faktisk kan forskjellen på implisitt og eksplisitt join-notasjon og respektere at vi har forskjellige meninger om "best practice". Men vi skal akseptere en som velger å ikke følge forumets regler? Husk at en aldri skal rase ut i tråden med kritikk av skrivefeil eller grammatiske feil. Om spørsmålet er dårlig formulert kan du pent og høflig be trådstarter omformulere spørsmålet. Dette kan legges til som et svar i tråden hvis det er et engangstilfelle, men hvis du har ergret deg over samme person tidligere anbefaler vi at du sender en personlig beskjed til personen der du ber han prøve å skrive tydeligere. Det finnes nemlig mennesker som har skrive- og leseproblemer og da skal man ta hensyn. Jeg kjenner flere personer er særdeles dyktige utviklere men som har skriveproblemer, så du bør kanskje tenke deg om før du dømmer folk uten å ha grunnlag for det. Og bare så det er sagt, Manfred har helt rett. SQL-koden din er arkaisk. Hvis jeg ikke husker helt feil så har left/inner/outer/full join vært best practice siden SQL-92, altså i hele 15 år! Lenke til kommentar
arex1337 Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 For det første virker det ikke redelig å kritisere posisjoner jeg ikke har tatt. For det andre har poenget mitt hele tiden hatt med notasjon å gjøre. Lenke til kommentar
roac Skrevet 4. desember 2007 Del Skrevet 4. desember 2007 For det første virker det ikke redelig å kritisere posisjoner jeg ikke har tatt. For det andre har poenget mitt hele tiden hatt med notasjon å gjøre. Om det bare har med notasjon å gjøre kommer an på query optimizer, og der er f eks MySQL langt i fra den skarpeste kniven i skuffen. Og om den klarer det med to tabeller er også spørsmålet hvordan den oppfører seg når det plutselig blir fire eller 10 tabeller i en spørring, noe som (til manges overraskelse her på dette forumet vil jeg tippe) er ganske så vanlig. Å bruke join syntakasen er videre spesielt hensiktsmessig med outer joins, noe som kan være noe herk å skrive med gammeldags sql. Ellers synes jeg det er merkelig å forsvare seg med at det kun er syntaksforskjeller, når det er snakk om en syntaks som det kom en erstatning for i 1992. Til og med Oracle har gått bort fra den syntaksen, selv om det tok mange år. Transact-SQL hadde en egne operatorer for outer joins (*= og =*), men ingen for full outer join, og disse operatorene er ikke lenger støttet i en standard-installasjon av Microsoft SQL Server. Det du prøver å forsvare er eldgammelt, og burde vært utdødd for flere år siden. Lenke til kommentar
power Skrevet 11. desember 2007 Forfatter Del Skrevet 11. desember 2007 Nei, det er ikke hjemmelekser dette Problemet mitt er at jeg ikke får til å hente navn for både uid og endret i samme spørring. Jeg ønsker at jeg kan hente ut all info fra tabell 2 og at radene "uid" og "endret" blir byttet ut med navn siden det er navnet på brukeren som enten har opprettet linjen eller har endret den Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå