31. marts 2003 - 20:02
Der er
12 kommentarer og 1 løsning
Datastruktur
Hvordan kan jeg select'e et kategori-id fra en table og vælge alle med dette kategori-id i en anden table, kategorisk! Eks. (db struktur): ID NAVN 1 PUNKT1 2 PUNKT2 3 PUNKT3 NAVN REFERENCE ID JAN 3 PER 2 ALLAN 2 JIMMY 1 Jeg vil gerne have at MySQL returnerer data'en (ikke visuelt) således: PUNKT1: JIMMY ------ PUNKT2: ALLAN PER ------ PUNKT3 JAN
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
31. marts 2003 - 20:05
#1
$query = mysql_query("SELECT tabel1.*, tabel2.* FROM tabel1, tabel2 WHERE tabel1.id = tabel2.id") Noget lignende dette.
31. marts 2003 - 20:06
#2
Fik ikke lige al PHP kode væk, din select: SELECT tabel1.*, tabel2.* FROM tabel1, tabel2 WHERE tabel1.id = tabel2.id
31. marts 2003 - 20:14
#3
Ja, den er jeg med på, men jeg synes ikke at mysql organisere dataen. Jeg bruger den i et php-script og med "while( $row = mysqlfetchObj )" kommer data'en ikke ud punktvis (jvf. PUNK1, PUNKT2 osv.)
31. marts 2003 - 20:17
#4
Nu skriver den dem bare ud i tilfældig rækkefølge? Så prøv med: order by tabel1.id til sidst.
31. marts 2003 - 20:20
#5
Jeg tror ikke du forstår. Outputtet bliver bare sorteret. Jeg vil gerne kunne skelne mellem PUNKT1 & PUNKT2, så jeg kan kategorisere JIMMY under PUNKT1, PER & ALLAN under PUNKT2 osv.
31. marts 2003 - 20:34
#6
Noget i retning af: SELECT PERSON.NAVN,PUNKT.NAVN FROM PERSON,PUNKT WHERE PERSON.ID=PUNKT.ID GROUP BY PUNKT.NAVN; ?
31. marts 2003 - 20:38
#7
Nope. Duer vist ikke. Der er ike nogen aggregeret funtktion.
31. marts 2003 - 20:40
#8
GROUP BY lader til IKKE at ville acceptere flere af samme PUNKT
31. marts 2003 - 20:41
#9
Enten den trivielle: SELECT PERSON.NAVN,PUNKT.NAVN FROM PERSON,PUNKT WHERE PERSON.ID=PUNKT.ID ORDER BY PUNKT.NAVN; eller hvis antallet af punkter er lille, fast og kendt: (SELECT ID,NAVN FROM PERSON WHERE ID=1) UNION (SELECT ID,NAVN FROM PERSON WHERE ID=2) UNION (SELECT ID,NAVN FROM PERSON WHERE ID=3)
31. marts 2003 - 20:53
#10
UNION !? Det er ikke nødvendigvis lille, fast og kendt, men derimod temlig dynamisk.
31. marts 2003 - 21:08
#11
UNION er valid SQL, men du vil jo næppe hardcode den SQL medmindre ID'erne er faste.
31. marts 2003 - 21:46
#12
Jo altså.. ID'erne referere jo til ID'er i en anden table. Så de er vel faste i den forstand.
01. april 2003 - 18:43
#13
Kan man åbenbart ikke.
Computerworld tilbyder specialiserede kurser i database-management