Sammenflet 2 tabeller

Tags:    databaser

Jeg har en wow side hvor vi har en raidkalender. Men vi har brug for en side til
raidkalenderen hvor vi kan se:
Navn
total til/fra
med på raids
signet op men ikke med
signet fra

Hvad skal i vide for at hjælpe?



10 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Men har du de data du gerne vil vise, som jeg kan se mangler du de informationer om de har været med, hvor lang tid, om de er tilmeldt men ikke dukket op osv. Har du ikke kun data til at se hvem det er? Og i bedste fald om de er signed op? Du kan vel ikke se om de er dukket op eller ej?

Men du har vel ikke noget at bruge tabel2 til? Det er vel alt det information du skal bruge i tabel1. Du har vel ikke noget at bruge tabel2 til da et username kan have flere profiler?



Hey Le-Thor.
Så skal du bruge Natural Join eller det er hvert fald en mulighed. Jeg ser nemlig at profile_id findes i begge tabeller, og natural join gør netop det at den smelter dem sammen ud fra dette.

Her er et eksempel:
SELECT *
FROM employee NATURAL JOIN department

Indsæt bare dine tabellers navne på employee og departments plads, så burde den virke out of the box



Er det ikke nemmere at bruge den der er indbygget i WoW?

Ellers skal vi vide noget om hvad af det du selv kan lave?

Hvilket sprog er det kodet i?

Har du en database, hvilken database?

Hvor kommer data fra? Melder man sig til på siden?



Ehm forstår ikke helt dit spørgsmål. Men tabeller sammenflettes ved at benytte koden NATURAL JOIN eller generelt JOIN i MySQL



Det er php det er skrevet i og data er i en mysql database.

I den ene tabel(tabel 1) ligger følgende:
signup_id
char_id
profile_id
raid_id
comments
cancel
queue
timestamp


I den anden tabel(tabel 2) ligger:
profile_id
email
password
priv
username


Vil tro at jeg kun skal bruge profile_id og username fra tabel 2 så man kan få navn på dem der står i tabel 1.

Jeg kan få den til at komme med en lang liste fra tabel 1 hvor den tager username fra tabel 2.
Men et brugernavn skulle meget gerne samles til en linie hvor man kan se:
Navn
total til/fra
med på raids
signet op men ikke med
signet fra




tabel 1:
signup_id -skal ikke bruges
char_id - skal ikke bruges
profile_id - er unikt som skal bruges til at finde username
raid_id - kan tælle på denne
comments - skal ikke bruges
cancel - hvis 0 er de signet op, hvis 1 er de signet fra
queue - hvis 0 er de med på raid, hvis 1 er de ikke med
timestamp - skal måske bruges

I den anden tabel(tabel 2) ligger:
profile_id - er unikt som er forfundet med username
email - skal ikke bruges
password - skal ikke bruges
priv - skal ikke bruges
username - skal bruges




Har lige prøvet. Når jeg gør dette så kommer der det samme brugernavn ud 25 gange hvis han har været skrevet op 25 gange.



Kan du ikke lige give mig din SQL-kode for din tabel, samt et realistisk datasæt. Så kan jeg lige sørge for at det virker.



ikke helt med på hvad du vil have?

Skal jeg poste indholdet af filen?

Jeg tror ikke man kan trække alt data ud på et kald til databasen.




Indlæg senest redigeret d. 08.03.2010 00:47 af Bruger #15739
Jeg har fundet ud af det



t