Zoeken in meerdere tabellen
wat is de beste manier om te zoeken in meerdere tabellen?
Ik weet de colummen en ik kan dus indexen van maken. Het gaat om in totaal 100-150 tabellen waarin gezocht wordt waarbij de aantal records per tabel verschillen. Ligt tussen de 150 en ergens ver boven de 50.000 maar gemiddeld zijn het zo'n 2000 records
Ik zit te denken om het geheel in 1 grote tabel te zetten en daar een index op los te laten maar ik vrees dat het dan een mega ding wordt van zo'n 1 1/2 miljoen rijen en dat lijkt me ook niet een oplossing.
Wie kan me hiermee ietsje verder helpen
Groeetn,
Edwin
geloof dat er iets behoorlijk fout zit dan..
dus mijn eerste vraagje is.. waarom zoveel?
Het zijn datafeeds van verschillende sites. Alle in dezelfde formaat maar ieder met zijn eigen produkten en zijn eigen tabel (nadat ik de csv heb ingelzen in mysql)
tabel producten
id
barcode
productnaam
..
tabel productenwinkel
id
winkelid
productid
vooraad
..
tabel winkels
id
naam
plaats
..
zo had het er bij mij uit gaan zien, vermakkelijkt het ook om te zoeken (wat je nu dus tegen komt)
edit: en ja, databases kunnen miljoenen records aan..
edit 2:
je had de csv bestanden uit kunnen lezen met php, en dat vervolgens opslaan ;)
Gewijzigd op 01/01/1970 01:00:00 door Terence Hersbach
Het inlezen van de csv heb ik idd automatisch met php. Hij haalt het op van de ftp server en zet het in de db na wat kleine dingetjes te hebben aangepast. Het is een kleine moeite om het zo te doen als jij zegt maar ik had het idee dat de tabel produkten dan te groot zou worden.
Het zou me wel wat schelen in het zoeken. Updaten wordt even iets lastiger lijkt me.
Het invoeren moet zo gaan:
winkel aanmaken in de tabel winkel,
product uit csv halen
controleren of het er niet al bij staat (dmv barcode oid (niet omschrijving))
als het er niet in staat > in de tabel producten zetten en winkelid en productid invoeren bij productenwinkel
als het er wel bij staat > alleen winkelid en productid invoeren bij productenwinkel
let erop dat je de prijs in de tabel productenwinkel zet, omdat een prijs niet in elke winkel hetzelfde is. (miss ook handig om de prijs excl. btw erin te zetten, omdat btw kan veranderen)
edit: welke gegevens heb je allemaal van een winkel en product?
Gewijzigd op 01/01/1970 01:00:00 door Terence Hersbach
Edwin schreef op 07.06.2007 08:08:
Dus het is geen probleem om een tabel produkten te hebben die bv 2 miljoen rijen heeft?
Het inlezen van de csv heb ik idd automatisch met php. Hij haalt het op van de ftp server en zet het in de db na wat kleine dingetjes te hebben aangepast. Het is een kleine moeite om het zo te doen als jij zegt maar ik had het idee dat de tabel produkten dan te groot zou worden.
Het zou me wel wat schelen in het zoeken. Updaten wordt even iets lastiger lijkt me.
Het inlezen van de csv heb ik idd automatisch met php. Hij haalt het op van de ftp server en zet het in de db na wat kleine dingetjes te hebben aangepast. Het is een kleine moeite om het zo te doen als jij zegt maar ik had het idee dat de tabel produkten dan te groot zou worden.
Het zou me wel wat schelen in het zoeken. Updaten wordt even iets lastiger lijkt me.
Als alles goed is opgebouwd mag het aantal rijen niet bepaald een probleem zijn lijkt mij. Te meer daar je toch nooit "SELECT * FROM tabel" sult doen neem ik aan :)
Die Select * zal ik wel doen maar dan zo
SELECT * FROM artikelen WHERE MATCH (titel,desc) AGAINST ('zoekwoord')
want dat was waar het me om ging uiteindelijk..zoeken in een berg met data.