11. december 2004 - 19:46Der er
28 kommentarer og 1 løsning
join på 2 tabeller
jeg har to tabeller i en db BESEATNING id (autonr) navn
AFSTAMNING dyrNavn (nr) mor (nr) far (nr) alle poster i "afstamning" har et nr der svare til "id" fra beseatning
hvordan kan man lave en join på de to tabeller, så alle poster i "afstamning" får erstattet deres nr med navnet fra tabellen "beseatning" når de udskrives?
SQL = "SELECT afstamning *, BESEATNING * FROM BESEATNING RIGHT JOIN AFSTAMNING ON BESEATNING.id = AFSTAMNING.BESEATNING" Set RS = MyConn.Execute(SQL) while not rs.eof
er den den ene eller anden du bruger. Den øverste mangler et . mellem tabelnavnet og *. Har du evt mulihed for at sende en tom database til mig, så vil jeg gerne se på det når jeg kommer hjem. Jeg kan ikke lige se hvad der går galt. Mail: Rasmus(a)fjordloekke.dk
AFSTAMNING dyrNavn (nr) mor (nr) far (nr) alle poster i "afstamning" har et nr der svare til "id" fra beseatning
jeg antog at feltet i afstamning som relaterer det til beseatning hed beseatning, men det gør det ikke. Jeg har ikke kunne finde noget felt som relaterer afstamning til beseatning.
jeg skal bruge navnene fra tabellen "beseatning" til at erstatte numrerne i tabellen "afstamning"
alle nr udfor ex mor og far i tabellen "afstamning" er = et ID fra tabellen "beseatning"
f.eks BESEATNING id Navn 1 Skovly Lotus 2 RT. Jumbo AFSTAMNING dyrNavn far 1 2 (tallene fra AFSTAMNING skal så erstattes af navnene fra BESEATNING når de udskrives)
hmm okay...har du så en idé om man kan lave noget tilsvarende som kan lade sige gøre? ellers skal man vel have en masse sql'er der looper i hinanden på en eller anden måde
Skal du bruge ovenstående til en side som skal vise data for en enkelt dyr, eller skal der vises en oversigt og mange dyr og deres familie, eller du skal måske bruge begge dele?
ja det er faktisk begge dele jeg skal have en side der viser en oversigt over alle med flg navn mor far og en side for hvert dyr med navn mor far morfar mormor farmor farfar
du kan evt bruge noget ala dim dbstring,Conn,rs,names dbstring="Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("./db.mdb")&";" Set Conn = Server.CreateObject("ADODB.Connection") conn.Open dbString
set rs = conn.Execute("SELECT id,navn FROM beseatning") dim dyrnavn, arrayKeys, i set dyrnavn=CreateObject("Scripting.Dictionary") while not rs.eof
cstr konverterer bare indholdet til en string, da id er et tal, returnerer den bare det tilsvarrende tal som en tekstvariabel.
Directory er bare et opslagsværk, hvor man kan gemme en nøgle og en værdi, det er det jeg gør med add, her relaterer jeg navnet på dyret med dets id.
Efterfølgende kan man så bede directory returnere værdien gemt på nøglen, ved at skrive Item(nøgle) og nøglen er jo vors id, så directoryet returnere den relaterede post nemlig vors navn.
Men man er nød til at bruge nøglen som tekst, derfor CStr
du kan bare skrive SELECT .... FROM beseatning WHERE dyrType=2
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.