/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Søgning i en mysql på kun en da
Fra : Jan Thogersen


Dato : 23-02-06 00:31

Hej alle,

Jeg har lavet en fin mysql database og php kode som bare spiller, men nu
vil jeg lave en søge funktion i min database.

Jeg har et felt af typen datetime men jeg vil gerne være i stand til at
kunne søge kun på datoen... Hvordan gør man lige det. Efter en del tid
www.mysql.org og php.net har jeg ikke kunne finde svaret.

Håber en eller anden kan give mit et hint!

På forhånd tak!

Mvh
Jan

 
 
Michael Zedeler (23-02-2006)
Kommentar
Fra : Michael Zedeler


Dato : 23-02-06 08:50

Jan Thogersen wrote:

> Jeg har lavet en fin mysql database og php kode som bare spiller, men nu
> vil jeg lave en søge funktion i min database.
>
> Jeg har et felt af typen datetime men jeg vil gerne være i stand til at
> kunne søge kun på datoen... Hvordan gør man lige det. Efter en del tid
> på www.mysql.org og php.net har jeg ikke kunne finde svaret.

Der er ellers gode muligheder på mysql.{com,org}

> Håber en eller anden kan give mit et hint!

http://dev.mysql.com/doc/refman/4.1/en/date-and-time-functions.html

Se DATE_FORMAT, YEAR, MONTH og DAY-funktionerne.

Mvh. Michael.
--
Which is more dangerous? TV guided missiles or TV guided families?
Visit my home page at http://michael.zedeler.dk/
Get my vcard at http://michael.zedeler.dk/vcard.vcf

Troels Arvin (23-02-2006)
Kommentar
Fra : Troels Arvin


Dato : 23-02-06 09:34

On Thu, 23 Feb 2006 00:30:47 +0100, Jan Thogersen wrote:
> Jeg har et felt af typen datetime men jeg vil gerne være i stand til at
> kunne søge kun på datoen...

Tjek DATE-funktionen.

--
Greetings from Troels Arvin


Kasper (24-02-2006)
Kommentar
Fra : Kasper


Dato : 24-02-06 15:52

Jan Thogersen skrev:
> Jeg har lavet en fin mysql database og php kode som bare spiller, men nu
> vil jeg lave en søge funktion i min database.

Hvis du bruger PHP, vil du sansynligvis søge efter et UNIX-timestamp.

Dette kan gøres på følgende vis:

<SQL (MySQL-funktion)>
SELECT
*

FROM
tabel

WHERE
datofelt = FROM_UNIXTIME(\'$dato\')
</SQL>


Hvis dit felt (som du skriver) er at typen date-time, vil den sammenligne helt ned til sekundet.

Hvis du er meget doven, kan du lave et par sjove spring (men læs nu SQL-manualen og dens funktioner). Se f.eks. her hvis du vil sammenligne en dato med et UNIX-timestamp (og ikke helt ned til sekunder):

<SQL (MySQL-funktion)>
SELECT
*

FROM
tabel

WHERE
FROM_UNIXTIME(UNIX_TIMESTAMP(datofelt), \'%d %m %y\') = FROM_UNIXTIME(\'$dato\', \'%d %m %y\')
</SQL>


Bare for sjov ;)

Ellers kan du ellers bruge MySQL\'s normale tids- og datofunktioner:

YEAR(datofelt) m.m. (hvis jeg husker rigtigt?)


Held og lykke med det ;)


--
Med venlig hilsen
Kasper Johansen, studerende

Søg
Reklame
Statistik
Spørgsmål : 177458
Tips : 31962
Nyheder : 719565
Indlæg : 6408173
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste