Toon posts:

[mysql] gegevens uit meerdere tabellen halen (newbie)

Pagina: 1
Acties:

Verwijderd

Topicstarter
hoi iedereen,

Ik zit met de volgende vraag: is het mogelijk om gegevens tegelijk uit alle tabel tegelijk te halen zonder dat je de tabelnamen hoeft in te voeren. Hij moet dus een bepaald gegeven (bijvoorbeeld het besturingssysteem) uit elke klant tabel halen zodat er een overzicht gemaakt kan worden wie welke besturingssytemen heeft draaien.

ik bedoel dus zoiets als :

code:
1
SELECT besturingssysteem FROM *


Voor de gene die denken waarom pleur je niet alle gegevens die je hebt in de zelfde tabel? , dat kan dus jammer genoeg niet. Ik mag de structuur niet veranderen, het enigste waar ik voor moet zorgen is dat er uit gelezen kan worden.

ik hoop dat jullie kunnen helpen :*)

Verwijderd

ga eens zoeken op JOIN query's.....

[edit]
te snel gelezen: 'zonder tabelnamen op te geven'; volgens mij is dat niet mogelijk...

[ Voor 61% gewijzigd door Verwijderd op 19-03-2004 11:43 ]


Verwijderd

Topicstarter
Verwijderd schreef op 19 maart 2004 @ 11:41:
ga eens zoeken op JOIN query's.....
hmm kan je iets meer details geven??

Verwijderd

Beetje brak datamodel waarmee je moet werken......
Wat jij wilt kan niet zoals je aangeeft, maar je zou een union query kunnen maken die de gegevens van alle klanten in 1 lijst zet, en daar dan je gegevens uithalen.

  • Rac-On
  • Registratie: November 2003
  • Niet online
zonder de tabelnamen? Lijkt mij heel moeilijk, zo niet onmogelijk.. Maar hoe erg is je datamodel als je de tabelnamen niet eens kent?

Waarvoor is het eigenlijk, werk of zo? kun je iets meer achtergrondinformatie geven, dan kunnen we je waarschijnlijk beter helpen...

doet niet aan icons, usertitels of signatures


Verwijderd

Moet het met één query of mag je er wat omheen scripten? Gaat het om ee webapplicatie en kan je daar eventueel wijzigingen in aan brengen? Want dan zou je eventueel een tabel kunnen maken die alle tabellennamen bevat (ooo dat klinkt vies....) Op die manier zou je in een lusje je gewenste query kunnen bouwen en die uitvoeren... Welke versie MySQL draai je overigens? UNION kan volgens mij pas vanaf versie 4

  • whoami
  • Registratie: December 2000
  • Laatst online: 21:56
Je zult zowiezo joins moeten gebruiken, en de tabelnamen moeten kennen.
In de P&W FAQ staat wel eea uitgelegd over JOINS, en anders kan je het wel in een SQL tutorial vinden.

https://fgheysels.github.io/


Verwijderd

Topicstarter
nou het zit zo:

Via het programma Aida32 kan ik een heel rapport laten maken van een pc (van ip adressen tot vrije ruimte op de schijf). Via een odbc driver laat ik die gevens in de tabel gooien. Maar het probleem is dus dat ik er geen unieke waarde aan megeven omdat het geheel automatisch gaat. Je drukt in Aida32 op verzenden en de gegevens worden automatisch in de database gepompt. De elende is nu dat het mij niet lukt om op het moment dat er zo'n rapport verstuurd wordt naar de database (dit gebeurd dus met de odbc driver) er een unieke waarde aan mee te geven, waardoor ik dus niet uit de tabel kan selecteren.

Ik moet dus op een manier dat rapport een klantcode mee geven, maar dat lukt mij dus niet.

Wat mij wel is gelukt: ik kan in aida (in de ini file) opgeven in welke tabel hij alle gegevens moet gooien en ik geef deze tabel dus de naam van de klant, hierin komen dus nu alle rapporten van pc's die bij die klant horen.

Maar nu wil ik dus ook dat ik kan zeggen van: geef mij een lijst waarin ik van alle klanten laat zien welke besturings systemen ze allemaal draaien, waardoor het dus heel makkelijk te zien is van: dat systeem moet geupgrade worden.

dit alles wordt uitgelezen door middel van een webaplicatie in php

Ik hoop dat jullie hier iets meer aan hebben.

[ Voor 4% gewijzigd door Verwijderd op 19-03-2004 12:05 ]


Verwijderd

Topicstarter
rac-on schreef op 19 maart 2004 @ 11:46:
zonder de tabelnamen? Lijkt mij heel moeilijk, zo niet onmogelijk.. Maar hoe erg is je datamodel als je de tabelnamen niet eens kent?

Waarvoor is het eigenlijk, werk of zo? kun je iets meer achtergrondinformatie geven, dan kunnen we je waarschijnlijk beter helpen...
het probleem is dat er zomaar een tabel bij kan komen (een nieuwe klant), en dan zou toch weer het script moeten aanpassen?

Verwijderd

als je in je ini kan aangeven in welke tabel hij alles moet plempen zou je een vaste naam moeten opgeven en dan eens testen of hij oude waardes niet overschrijft. Als dat niet zo is lijkt mij jouw probleem verholpen want dan kan je op bepaalde criteria je gegevens ophalen en dat per klant laten zien (ik neem nml aan dat de klant naam ook in de db komt... anders heb je er idd niet zoveel aan en zie ik het nut er niet van in om het in de db te gooien...)

  • whoami
  • Registratie: December 2000
  • Laatst online: 21:56
Verwijderd schreef op 19 maart 2004 @ 12:04:
[...]


het probleem is dat er zomaar een tabel bij kan komen (een nieuwe klant), en dan zou toch weer het script moeten aanpassen?
Voor een nieuwe klant gaat er een nieuw record in een tabel geinsert worden, en zal er geen nieuwe tabel aangemaakt worden.

Mocht het toch zo zijn zoals jij zegt, dan heb je een extreem brak datamodel en een applicatie waar je niets aan hebt.

https://fgheysels.github.io/


  • Rac-On
  • Registratie: November 2003
  • Niet online
Is het niet zo dat er een record wordt aangemaakt, in de tabel die in de ini file staat? Waarschijnlijk kan je wel ergens in dat ini bestand een identifier meegeven?

En anders zul je een fatsoenlijke klant registratie bij moeten gaan houden. het is zo dat je informatie wilt vinden over een klant. Niet dat uit deze informatie moet komen welke klanten er zijn?

Mijn puntje:

Ergens netjes bijhouden welke klanten er zijn!

doet niet aan icons, usertitels of signatures


Verwijderd

heeft mysql heen systeemtabel waarin de namen van alle tabellen staan?
Dan zou je daar alle tabellen like "tabelnaam_%" kunne halen.....
Pagina: 1