Jeg arbejder for tiden en del med stored procedures i mysql og der er en ting jeg har tænkt meget over.
Hvis jeg har fundet nogle data i en forespørgsel men jeg vil kun have de specifikke data der macher et andet krav jeg ikke kan stille i den første forespørgsel hvordan gør jeg så det direkte i min procedure? Altså hvordan udfører jeg en ny select med data fra den gamle select eller kan jeg udføre en select i en anden select?
Jeg kan selvfølgeligt godt hive mellemresultatet ud af databasen og så bare lave en ny forespørgsel til databasen men det er jo overhoved ikke optimalt.
Det ser ud til at være det jeg har brug for. men ser lige på det.
Jeg har bare 2 tabeller t1 og t2. Det jeg skal undersøge er om et element i t1 er i t2 da den angiver relationer mellem elementer i t1. Så jeg skal gå noget lignende t1.elm1 -> t2.elm1 => t2.em2 -> t1.eml2. Så det er lidt kringlet at få til at hænge sammen.
ok det er lidt mere komplekst. her kommer en mere nøje forklaring.
jeg har to tabeller t1 og t2. t1 har rækkerne r1, r2 og r3. t2 har rækken r1.
det jeg gerne vil have er t1.r1, t1.r3 men hvis t1.r2 findes i t2.r1 og t2.r1 er lig en værdi i t1.r2 som t1.r1 også er lig så skal t1.r3 ganges med en faktor.
er ikke helt nemt da de 2 referencer til t1.r1 ikke behøver at være ens.
Og jeg tror at du skal prøve at illustrere hvad du vil - din beskrivelse er noget svær at gennemskue, men når man skal have flere rækker fra samme tabel i en betingelse, så plejer en self join at være løsningen.
Jeg tror jeg springer over her - jeg forstod aldrig problematikken.
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.