Heliospan | maandag 13 december 2004 @ 20:50 | |||||
* Poging twee, nu ontopic gaarne. In dit topic kun je problemen met queries of algemene vragen over (My)SQL kwijt, gericht op beginners. Discussies over verschillende soorten script/database/opmaak/whatever-talen zijn niet gewenst. *![]() quote:Handige linkjes: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Fok!topics: ![]() ![]() ![]() ![]() ![]() | ||||||
mschol | maandag 13 december 2004 @ 21:29 | |||||
oke hopen dattie nu wel ontopic blijft: TVP | ||||||
Sander | maandag 13 december 2004 @ 23:06 | |||||
Dat doet ie wel. Tevens een TVPtje om dat in de gaten te houden ![]() | ||||||
smvs | dinsdag 14 december 2004 @ 00:05 | |||||
Check je favoriete p2p software voor wat boeken in PDF formaat. Ik ken toevallig een paar daagjes geleden me wat gaan verdiepen in SQL en deze PDF-jes komen goed van pas. | ||||||
smvs | dinsdag 14 december 2004 @ 00:06 | |||||
quote:ken=ben (ik kan niet editen want ik heb niet de rechten om mijn eigen bericht te editen blijkbaar) | ||||||
DutchBlood | dinsdag 14 december 2004 @ 09:45 | |||||
*tvp* | ||||||
Heliospan | dinsdag 14 december 2004 @ 20:08 | |||||
Ik ben bezig met een systeem om mijn luistergedrag online op te slaan in een database. Het werkt al prima en nu ben ik bezig met een site waar nog veel meer mensen dit kunnen gebruiken, á la Audioscrobbler, maar dan uitgebreider. Als er meer mensen hier aan mee gaan doen wil ik een andere databaseopmaak doen. Ik heb het nu zo:
Zoals te zien is, zitten alle waarden in 2 tabellen. Dit geeft echter best onoverzichtelijke queries, vooral als ze iets uitgebreider zijn. Ook wordt deze tabel erg groot als er meerdere users hieraan mee gaan doen. Ik heb nu per maand al ongeveer 400 nieuwe rijen. Ik had als plan om de nieuwe versie op zo'n manier te doen:
Ook al zijn de tabellen per stuk veel en veel kleiner, - en bevatten ze minder strings per rij -, nu moet ik af en toe wel queries doen die over maximaal 7 tabellen tegelijk gaan. Mijn vraag is dus, heb ik hier snelheidswinst mee als ik heel veel rijen heb, of is het juist trager omdat er meer tabellen zijn? | ||||||
Heliospan | woensdag 15 december 2004 @ 15:11 | |||||
Stormlooptopic ![]() | ||||||
VeerMans | woensdag 15 december 2004 @ 15:15 | |||||
iedereen vind sql blijkbaar een eitje ![]() | ||||||
RicXDesign | woensdag 15 december 2004 @ 15:20 | |||||
tvp - krijg dat f*%îng php en sql maar niet in mn kop | ||||||
VeerMans | woensdag 15 december 2004 @ 15:22 | |||||
quote:daar zijn hele mooie topics ofer ![]() | ||||||
Heliospan | donderdag 23 december 2004 @ 16:10 | |||||
Kost het meer rekenkracht om een hele tabel op te halen ipv een LIMIT toe te kennen? Voor zover ik weet wordt de hele tabel sowieso doorgezocht, toch? [ Bericht 3% gewijzigd door Heliospan op 23-12-2004 16:17:23 ] | ||||||
mschol | donderdag 23 december 2004 @ 16:14 | |||||
quote:ik denk dat een limit sneller is omdat hij maar een bepaald aantal regels pakt en niet een hele table hoeft te pakken.. | ||||||
mschol | donderdag 23 december 2004 @ 16:15 | |||||
quote:klopt.. een koekie ![]() | ||||||
Heliospan | donderdag 23 december 2004 @ 16:19 | |||||
quote:Ik had er even bij moeten vertellen dat ik wel wil sorteren op een bepaalde kolom. 'SELECT * FROM tabel ORDER BY datum' - bijvoorbeeld. Als ik dit doe wordt de hele tabel eerst gesorteerd op een kolom. Als ik een LIMIT toevoeg, wordt hierna de gevraagde aantal regels teruggestuurd. | ||||||
_Denker | donderdag 23 december 2004 @ 16:20 | |||||
quote:Als je een limit doet, dan pakt hij bijvoorbeeld id 1 t/m 30, de rest kijkt 'ie niet eens meer naar. | ||||||
Heliospan | donderdag 23 december 2004 @ 16:24 | |||||
quote:Zoals jij het zegt zouden de rijen met de eerste 30 primary keys geselecteerd worden en gesorteerd worden. Echter, de hele tabel wordt geselecteerd en de eerste 30 zoekresultaten worden teruggegeven. Of ik begrijp je verkeerd ![]() | ||||||
Heliospan | donderdag 23 december 2004 @ 16:26 | |||||
quote:Ah, een expert ![]() ![]() | ||||||
mschol | donderdag 23 december 2004 @ 16:55 | |||||
quote:momentje volgend jaar krijg je je antwoord ![]() heb het druk... | ||||||
Roonaan | donderdag 23 december 2004 @ 20:07 | |||||
Even een LEFT JOIN probleem/kwestie/vraag. Ik wil bij een gegeven userid, opvragen welke referrers die heeft, maar tegelijkertijd voor elk van die referrers het aantal (sub)referers. Uitgaande van een tabel als onderstaande tabel tbl_members
Dan zou een query als onderstaande toch moeten voldoen?
Dit zou als resultaat moeten hebben
Enkel, ik krijg gewoon (3,0) (4,0) en (9,0). Dat schiet dus niet op. Maar volgens mij maak ik een klassieke denkfout. Elke input is behulpzaam at this stage. -r- | ||||||
Heliospan | woensdag 29 december 2004 @ 05:56 | |||||
Ik lees vaak dingen over JOIN, LEFT JOIN en INNER JOIN. Maar, wanneer heb je die nou nodig? Ik gebruik meestal
En dat werkt ook prima? ![]() | ||||||
Energie | woensdag 29 december 2004 @ 23:39 | |||||
goeie topic | ||||||
Heliospan | woensdag 29 december 2004 @ 23:50 | |||||
Alleen jammer dat 4 van de 5 vragen niet beantwoord zijn ![]() | ||||||
Bruce117 | donderdag 30 december 2004 @ 00:07 | |||||
quote:Als ik het even snel in een Access databaseje frot dan krijg ik bijna het resultaat wat jij verwacht. Alleen Bij 3 krijg ik 3 refs i.p.v. 2 (zoals jij schrijft). Volgens mij moet het inderdaad 3 zijn. Het enige wat me verder opvalt is dat er geen , staat tussen de 2 selectievelden. (Dit zal wel een typo zijn bij het overzetten naar fok). Als je een left join gebruikt wat ook moet, dan ben ik gewent om het als volgt op te schrijven
let op het subtiele verschil in de volgorde van de velden. Hopelijk heb je er iets aan. | ||||||
Bruce117 | donderdag 30 december 2004 @ 00:12 | |||||
quote:Ik neem aan dat je dan in de WHERE-Clause iets over de relatie tussen tabel1 en tabel2 zegt. Anders krijg je waarschijnlijk teveel records. | ||||||
Heliospan | donderdag 30 december 2004 @ 00:41 | |||||
Dat klopt ![]() | ||||||
Heliospan | woensdag 2 maart 2005 @ 15:54 | |||||
Ik heb de volgende query:
Nu heb ik een andere tabel, ixney_reacties waarin al dan niet reacties voor het betreffende onderdeel staan. ixney_reacties heeft de kolom reactie_ondid die gelijk is aan ond_id in bovenstaande query. Nu wil ik een lijst geven van onderdelen (dat gebeurt al met deze query), maar toevoegen hoeveel reacties er zijn. Hoe doe ik dat? Left/Right/Inner/Outer-join? Welke en hoe? ![]()
Die GROUP BY slaat overigens nergens op, maar die moest erbij volgens de foutmelding. Het is vast heel makkelijk, maar ik kom er even niet uit. Kan iemand me verder helpen? | ||||||
Heliospan | woensdag 2 maart 2005 @ 16:28 | |||||
Ah, een left join doet wat ik wil. Nevermind ![]() |