[mysql] date select probleem in where clause

Pagina: 1
Acties:

  • Haranaka
  • Registratie: September 2000
  • Laatst online: 10-05 19:25
Ik ben bezig met het bouwen van een querie, maar loop tegen het volgende 'probleem' aan.

Ik heb een kolom genaamd 'date', dat is een datetime format (YYYY-MM-DD HH:MM:SS).
Nu wil ik alles selecteren wat vandaag gebeurt is.

Dit kan zo:
code:
1
SELECT * from table where date>current_date


Maar ik denk dat deze manier van werken in mijn toepassing redelijk wat snelheids verlies gaat kosten. Daarom zat ik te denken aan zoiets:

code:
1
2
3
4
5
6
7
SELECT 
   veld,
   DATE_FORMAT(date,'%Y-%m-%d') as datum
FROM
   table
WHERE
   datum=current_date

Als ik zoiets invoer dan werkt dat niet, hij zegt dat hij "Unknown column 'datum' in 'where clause'"
Nou vraag ik me af hoe dit kan, waarom accepteert mysql dit niet gewoon?

...


  • Wokschotel
  • Registratie: December 1999
  • Laatst online: 15:08

Wokschotel

Op 6 wielen

Haranaka schreef op 18 december 2003 @ 14:44:
Ik ben bezig met het bouwen van een querie, maar loop tegen het volgende 'probleem' aan.

Ik heb een kolom genaamd 'date', dat is een datetime format (YYYY-MM-DD HH:MM:SS).
Nu wil ik alles selecteren wat vandaag gebeurt is.

Dit kan zo:
code:
1
SELECT * from table where date>current_date


Maar ik denk dat deze manier van werken in mijn toepassing redelijk wat snelheids verlies gaat kosten. Daarom zat ik te denken aan zoiets:

code:
1
2
3
4
5
6
7
SELECT 
   veld,
   DATE_FORMAT(date,'%Y-%m-%d') as datum
FROM
   table
WHERE
   datum=current_date

Als ik zoiets invoer dan werkt dat niet, hij zegt dat hij "Unknown column 'datum' in 'where clause'"
Nou vraag ik me af hoe dit kan, waarom accepteert mysql dit niet gewoon?
Die kolom 'datum' in je where-statement bestaat niet; volgens mij kun je daar alleen bestaande kolomnamen kwijt.

http://www.mysql.com/doc/en/SELECT.html zegt het volgende:
It is not allowed to use a column alias in a WHERE clause, because the column value may not yet be determined when the WHERE clause is executed. See section A.5.4 Problems with alias.

[ Voor 30% gewijzigd door Wokschotel op 18-12-2003 14:51 ]