date functie in mysql

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Roy marijnissen

roy marijnissen

05/05/2006 23:14:00
Quote Anchor link
Ik heb ik mij database een veld met de waarde "DATE" en daarin dus een geboortedatum. Nu moet het mogenlijk zijn om nu b.v. alle datum die als maand 01 hebben deze te laten zien. Nu heb ik de volgende code maar deze geeft aan dat er een fout zit in de qwery wat doe ik fout ?:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
$sql
="SELECT geb_datum FROM Leden WHERE MONTH(geb_datum)=01 ORDER BY MONTH(geb_datum) ASC";

     $result = mysql_query($sql);  
    echo mysql_error();

      while ($row = mysql_fetch_object($result)) {  

          
$Team    = stripslashes($row->Team);  
$Nr    = stripslashes($row->Nr);  
$Naam    = stripslashes($row->Naam);  

echo "$Naam";

}
                ?>
 
PHP hulp

PHP hulp

16/11/2024 18:45:54
 
Eris -

Eris -

05/05/2006 23:18:00
Quote Anchor link
Oke wat is die error?
 
Willem Jan Z

Willem Jan Z

05/05/2006 23:28:00
Quote Anchor link
Dat vraag ik me ook af, want ik heb hem net getest, en bij mij werkt hij. Misschien een fout in tabelnaam/kolomnaam?
 
Roy marijnissen

roy marijnissen

06/05/2006 00:21:00
Quote Anchor link
Ik zeg wel dat er een error komt maar het probleem is dat hij gewoon helemaal niks weergeeft.
 
Roy marijnissen

roy marijnissen

06/05/2006 00:25:00
Quote Anchor link
Het is al gelukt... Sorry. Het probleem was het volgende :

$sql="SELECT geb_datum FROM Leden WHERE MONTH(geb_datum)=01 ORDER BY MONTH(geb_datum) ASC";

moest zijn :

$sql="SELECT * FROM Leden WHERE MONTH(geb_datum)=01 ORDER BY MONTH(geb_datum) ASC";

Dit omdat hij anders echt alleen de geboortedatum ophaald en dus niet $naam kan printen...
 
Frank -

Frank -

06/05/2006 00:41:00
Quote Anchor link
Waarom een * ? Gewoon de naam opvragen is voldoende. De rest van de data heb je daar niet voor nodig. Bij tabellen die veel kolommen (en dus data) bevatten, kan het zinvol zijn om alleen datgene op te vragen dat je nodig hebt. Bij een paar honderd records zal het echter niet veel uitmaken in de performance.

En een query over meerdere regels uitschrijven, zorgt ook voor extra duidelijkheid:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
$sql="
SELECT
  geb_datum,
  naam
FROM
  Leden
WHERE
  MONTH(geb_datum) = 1
ORDER BY
  MONTH(geb_datum) ASC
";
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Jan Koehoorn

Jan Koehoorn

06/05/2006 20:45:00
Quote Anchor link
@Allen: de WHERE condition uit de voorbeelden pakt alleen maanden met cijfer 1, dus die ORDER BY MONTH(geb_datum) is overbodig.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.