Avatar billede jaw Nybegynder
24. november 2004 - 23:12 Der er 11 kommentarer og
1 løsning

2 tabeller og 2 x 2 felter

Godaften.

Vidste ikke lige hvad jeg skulle give mit spørgsmål af titel. Men forhåbentlig kan I forstå det bedre ud af min forklaring.

Jeg har 2 tabeller, begge indeholdende id og name. Tabellerne bliver benyttet i et statssystem. Første gang, at systemet støder på en bruger bliver han opettet i den første tabel med id og navn. Bliver han opdaget igen, evt. under andet navn, optræder han i tabel nr. 2, dog med samme id som i tabel nr. 1.

Det jeg så nu gerne vil, er at jeg vil søge efter navn - altså i begge tabeller.

Håber det er forståeligt,
/Jaw
Avatar billede schaefner Juniormester
24. november 2004 - 23:18 #1
Hvordan vil du test om det er den samme hvis han optræder med et navn i først tabel og et andet navn senere hen?
Avatar billede jaw Nybegynder
24. november 2004 - 23:19 #2
Det statssystem er til CS-servere (Psychostats). Derfor bliver spillere tracket på deres Steam-ID, som selvf. også optræder i databasen. Det er bare ikke lige det jeg er interesseret i lige nu :)
Avatar billede schaefner Juniormester
24. november 2004 - 23:20 #3
Eller også misforstår jeg bare dit spørgsmål :)
Avatar billede schaefner Juniormester
24. november 2004 - 23:22 #4
Du vil bare teste om navnet er i begge tabeller?
Avatar billede jaw Nybegynder
24. november 2004 - 23:25 #5
Tjah, det er også lidt avanceret. Og jeg tror at det virkelige problem lidt er, at de har samme navn(?). Jeg vil søge efter spillere på navn.

Et eksempel vil kunne være:
tabel 1:
plrid    name
1        jaw
2        jens
3        peter
4        schaefner

tabel 2:
1        jawbreaker
2        jenshansen
3        allan
4        schaefner

Søger jeg på "jaw" skal selvf. både jaw og jawbreaker dukke frem fra de 2 tabeller. Søger jeg på "allan", skal den finde "allan" i tabel 2, men ikke "peter" i tabel 1, som ellers har samme id og derfor faktisk er samme spiller, bare ikke på hans navn.

Mere forståeligt?
Avatar billede bumle90 Nybegynder
24. november 2004 - 23:57 #6
Uden præcis at vide hvad du skal så formoder jeg at du vil have samme ID til x antal spillernavne. Hvis det er korrekt skal du designe din database anderledes.
Du laver en tabel der hedder fx. spillerinfo og en anden der hedder nicknames.
I spillerinfo ligger fx.
ID|Fornavn|Efternavn|og andre oplysninger der kunne være relevante. ID er primær nøgle
I nicknames ligger selvsagt alle ens spillers Nicknames. Altså
ID|Nickname

Konkret eksempel:

Spillerinfo:
1|Kaj|Andersen|strandvejen 4
2|Karljohan|Ågersen|bondevejen 99

nicknames:
1|wiseguy
1|Mr. anderson
1|noget 3.
2|frank farmer
2|kartoffelmanden
2|osv osv

Som sagt er jeg ikke helt med på hvad det er du vil....Men måske det kan hjælpe dig :)
Mvh.
Avatar billede bumle90 Nybegynder
24. november 2004 - 23:58 #7
Relationen er selvfølgelig ID som du skal joine over når du henter en spillers nicknames ud af databasen
Avatar billede jaw Nybegynder
25. november 2004 - 00:02 #8
Det kan ikke rigtig hjælpe, for strukturen af databasen ligger fast, og den kan jeg ikke ændre på (uden alt for meget bøvl!).

Det jeg vil ud i er noget a'la:

SELECT tabel1.plrid, tabel1.name, tabel2.plrid, table2.name FROM tabel1, tabel2
WHERE tabel1.name LIKE '%$navn%' OR tabel2.name LIKE '%navn%'

Den løsning virker bare ikke, hvilket er lidt klart. Forklarer det bedre hvad jeg vil? :|
Avatar billede bumle90 Nybegynder
25. november 2004 - 00:19 #9
Hmmm okay...det kan jeg godt se....Det er nu godt nok bare ikke en pæn database struktur. Evt. kan du klare det vha. en innerjoin mellem de to tabeller så du får alle kolonner med. Altså fx.

SELECT Table1.id, Table1.name, Table2.name
FROM Table1 INNER JOIN Table2 ON Table1.id = Table2.ID WHERE Table1.name LIKE '%$name%' OR  Table2.name LIKE '%$name%'
Avatar billede bumle90 Nybegynder
25. november 2004 - 07:25 #10
hvordan ser det ud?
kører det?
Avatar billede jaw Nybegynder
25. november 2004 - 07:33 #11
Godmorgen

Nej, det kører ikke helt. Men jeg må lige afprøve nogen forskellige ting inden jeg helt kan afvise det :)
Avatar billede jaw Nybegynder
25. november 2004 - 09:21 #12
Jow bumle, jeg tror du rammer noget af det rigtige :) I hvert fald, så bliver det ikke bedre. Tak for hjælpen...
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester