[PHP/MySQL] Tabel sorteren op basis van andere tabel

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Enfer
  • Registratie: Februari 2004
  • Laatst online: 18-09 16:32
Heya

Ik heb een vraagje met betrekking tot het sorteren van tabellen..
Ik heb nu dus twee van onderstaande tabellen in mijn database:
skilllevelxp
Total140619764926
Attack802116467
Defence 801989847
Strenght 801989533
Hitpoints 802186706
Ranged 65450357
Prayer 57205027
Magic 68615811
Cooking 822488571
Woodcutting 771514337
Fletching71853414
Fishing 802093150
Firemaking 57216725
Crafting 58240153
Smithing 62350888
Mining 69730745
Herblore 54152479
Agility60274011
Thieving 56184057
Slayer72913600
Farming 4998400
Runecrafting49100648


Nou wil ik èèn tabel met de andere tabel vergelijken. Dit is mij al gelukt, maar nu wil ik graag dat de tabellen ook sorteerbaar zijn ok level op xp, op zich niet zo moeilijk, was het niet dat dan de 2e tabel een heel andere vorm kan aannemen omdat de inhoud van de tweede tabel heel anders kan zijn dan de eerst (qua getallen), waardoor dan ook de "sort" anders zal verlopen en dus bijvoorbeeld:
het cooking level van tabel 1 met het agility level van tabel 2 word vergeleken, wat natuurlijk niet de bedoeling is..

Dit lukt mij maar niet..
Ik heb al dingen geprobeerd met het joinen van 2 tabellen, maar hier kwam ik niet echt uit..

Edit: ik gebruik MySQL 5.0.18 (tnx dexterdee)
Edit2: Hier een voorbeeld, van hoe het allemaal in elkaar zit, hopelijk word het dan ook meteen duidelijk wat ik precies wil:
http://www.r3con.nl/nick/...g1=24032006&dag2=23032006
Hopelijk is mijn verhaal een beetje helder, en kunnen jullie mij helpen.

[ Voor 8% gewijzigd door Enfer op 25-03-2006 09:47 ]


Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 18:44

gorgi_19

Kruimeltjes zijn weer op :9

Dan sorteer je toch eerst op level, dan op agility?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • Enfer
  • Registratie: Februari 2004
  • Laatst online: 18-09 16:32
Ja, maar alle waarden (skills) van beide tabellen moeten wel met elkaar vergeleken worden.. en ik vat niet echt hoe ik dat voor elkaar ga krijgen..

Acties:
  • 0 Henk 'm!

  • Spockz
  • Registratie: Augustus 2003
  • Laatst online: 21-09 10:08

Spockz

Live and Let Live

Het kan zijn dat ik de plank volledig missla hoor. Maar kan je dit niet in een associative array zetten en dan sorteren op Skill, level of xp?

C'est le ton qui fait la musique. | Blog | @linkedin
R8 | 18-55 IS | 50mm 1.8 2 | 70-200 2.8 APO EX HSM | 85 1.8


Acties:
  • 0 Henk 'm!

  • Enfer
  • Registratie: Februari 2004
  • Laatst online: 18-09 16:32
Hey ja, dat zou ook nog kunnen, het alles in een array zetten...
Maar het leek mij het netste om een oplossing in MySQL te vinden, voor zover die mogelijk is...

Acties:
  • 0 Henk 'm!

  • DexterDee
  • Registratie: November 2004
  • Laatst online: 21-09 13:59

DexterDee

I doubt, therefore I might be

Ik lees niet wat voor versie van MySQL je gebruikt. Er zijn bekende performance issues met het sorteren op twee (of meer) velden in een tabel of een join van tabellen. Wat je zou kunnen doen indien je MySQL 5 gebruikt (of kunt gebruiken) is een view maken. Deze kan worden opgebouwd uit een query die de resultaten voor je combineert. Met één of meerdere INNER JOINs kun je de tabellen aan elkaar knopen en met ORDER BY sorteren. Als de view eenmaal bestaat kun je hierop een query doen zoals je gewend bent op een tabel.

Klik hier om mij een DM te sturen • 3245 WP op ZW

Pagina: 1