WishMaster
[mod] 666
Sinds 26/2/2003
T: 99
R: 2018
|
9/7/2006 -
16:17u
| Quote
|
Ik heb een database met 3 velden: Dag, Maand, Jaar
Nu is het de bedoeling dat ik 2 menu's maak.
Menu1 De 5 laatste entries weergeven als een url. Dat is gelukt door SELECT * FROM tabel WHERE Dag='$Dag' LIMIT 0, 5 enz... en dan krijg ik iets in de vorm van <a href='blabla.php?d=10'>den 10e</a>
Menu2 Een soort 'archief' per maand. De link moet er dus uitzien als <a href='blabla.php?m=7&y=2006>juli 2006</a> met 'SELECT DISTINCT Maand from tabel ..' kan ik de maanden eruit halen, maar de combinatie met het jaar lukt dus niet...
Suggesties?
|
Quagmire
wzl-lid
Sinds 18/11/2003
T:62 -
R:1458
|
9/7/2006 -
16:52u
| Quote
|
Gaat het nie voor ne distinct te doen op de combinatie van jaar en maand?
Welke database gebruikt ge eigenlijk? MySQL?
edit WM: jep, mySQL
Laatst aangepast door
WishMaster
op 9/07/2006 17:47:58u
(1x aangepast)
|
Skyke
WZL-lid
Sinds 7/5/2003
T:7 -
R:15
|
9/7/2006 -
18:35u
| Quote
|
Eens gedacht om subqueries te gebruiken ? Met de hoofdquery selecteer je elk jaar en hier in ga je dan iedere maand pakken.
|
WishMaster
[mod] 666
Sinds 26/2/2003
T:99 -
R:2018
|
9/7/2006 -
18:51u
| Quote
|
En hoe werkt da precies?
SELECT DISTINCT(Maand) FROM tabel IN (SELECT DISTINCT(Jaar) FROM tabel)
Laatst aangepast door
WishMaster
op 9/07/2006 18:54:18u
(1x aangepast)
|
Skyke
WZL-lid
Sinds 7/5/2003
T:7 -
R:15
|
10/7/2006 -
16:23u
| Quote
|
de syntax ken ik nie meer zo precies maar iets gelijk gij hebt staan. select col from (select col from tab_naam).
|
WishMaster
[mod] 666
Sinds 26/2/2003
T:99 -
R:2018
|
10/7/2006 -
17:30u
| Quote
|
SELECT DISTINCT(Maand) FROM tabel IN (SELECT Jaar FROM tabel) #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'IN ( SELECT Jaar FROM tabel )
|
caoimhin
wzl-lid
Sinds 11/6/2006
T:2 -
R:144
|
10/7/2006 -
19:10u
| Quote
|
welke versie van MySQL heb je? volgens mij is het pas vanaf 4.1 dat subquery's in MySQL zitten
|
WishMaster
[mod] 666
Sinds 26/2/2003
T:99 -
R:2018
|
10/7/2006 -
19:16u
| Quote
|
MySQl: Client API version 4.0.27
PHP Version 4.4.2
Apache Release 10333100
|
Losealot
Beachboy
Sinds 24/9/2004
T:55 -
R:1358
|
10/7/2006 -
19:26u
| Quote
|
uw subquery klopt nie, ge moet da zo nie gebruiken. maar ksnap nie echt wa ge wilt doen met uw query, mss kunt ge een voorbeeldje geven
|
WishMaster
[mod] 666
Sinds 26/2/2003
T:99 -
R:2018
|
10/7/2006 -
19:46u
| Quote
|
Ja ik ken niks van subqueries  Eerst da ik ervan hoor eigenlijk.
@ Losealot: voorbeeldje staat toch in de bovenste post?  Velden: Dag, Maand, Jaar Per dag zal er wel minstens 1 entry zijn.
Nu wil ik automatisch een lijst genereren die de maanden weergeeft waarin er een entry geweest is. juni 2006 <a href=bla.php?maand=6&jaar=2006>juni 2006</a> juli 2006 <a href=bla.php?maand=7&jaar=2006>juli 2006</a> ...
Nu moet ik dus zien uit te vissen voor welke maanden er een entry geweest is. Met SELECT DISTINCT(Maand) gaat dat. Maar dan kom ik in de problemen met mijn jaren (juli 2006 != juli 2007) Ik kan een script schrijven, maar volgens mij moet sql ook lukken
|
Losealot
Beachboy
Sinds 24/9/2004
T:55 -
R:1358
|
10/7/2006 -
20:18u
| Quote
|
aa, alst da maar is, gewoon simpel: SELECT DISTINCT maand, jaar FROM tabel
|
Quagmire
wzl-lid
Sinds 18/11/2003
T:62 -
R:1458
|
10/7/2006 -
20:38u
| Quote
|
awel dat vroeg ik mij toch ook af in mijne eerste reply....Of ge gene distinct kunt doen op de combinatie van die velden
|
WishMaster
[mod] 666
Sinds 26/2/2003
T:99 -
R:2018
|
10/7/2006 -
21:18u
| Quote
|
Haha  omg, da werkt dus  Dikke vette merci ! *sql-n00b*
@ Quagmire: ik dacht dat ge bedoelde om Maand en Jaar samen te voegen ($bla = $Maand . $Jaar ofzo) en daar dan een distinct op te doen
Laatst aangepast door
WishMaster
op 10/07/2006 21:19:48u
(1x aangepast)
|
Tiso
General
Sinds 10/6/2003
T:15 -
R:413
|
26/7/2006 -
14:32u
| Quote
|
<a href='blabla.php?m=7&y=2006>juli 2006</a> normaal kunt ge dan die m en y gebruiken in uw pagina als $m en $y, maar moet daarvoor een bepaalde phpextensie ingeladen zijn, want bij mij lukt dat hier niet, kheb wamp geïnstalleerd
|
Flyboy
[mod] everywhere
Sinds 18/6/2003
T:43 -
R:4373
|
26/7/2006 -
17:44u
| Quote
|
Tiso schreef:
<a href='blabla.php?m=7&y=2006>juli 2006</a> normaal kunt ge dan die m en y gebruiken in uw pagina als $m en $y, maar moet daarvoor een bepaalde phpextensie ingeladen zijn, want bij mij lukt dat hier niet, kheb wamp geïnstalleerd
dat ligt eraan of globals aanstaan of niet in php. is een instelling in uw php.ini bestand.
als deze afstaan kunt ge de variabelen nog altijd aanroepen, maar dan wel via $_GET['d'] en niet $d is een beveiliging dat ingebouwd is. de meeste webhosts hebben dat wel niet aanstaan.
|
Tiso
General
Sinds 10/6/2003
T:15 -
R:413
|
26/7/2006 -
18:44u
| Quote
|
tnx, nu kan ik verder
|
dannyboy
wzl-lid
Sinds 31/5/2005
T:108 -
R:883
|
30/10/2006 -
17:59u
| Quote
|
moet ge uw subquery nie in uw WHERE clausule zetten, ik dacht dat da nergens anders kon
|
null
wzl-lid
Sinds 9/2/2005
T:2 -
R:2
|
9/1/2007 -
0:06u
| Quote
|
Wat je beter zou doen is dag/maand/jaar in 1 veld steken van het type DateTime, dan heb je al die miserie niet (en heb je een datum-typed veld waarop je datum-related bewerkingen kan uitvoeren)
|