26. november 2004 - 23:38Der er
25 kommentarer og 1 løsning
Datediff i antal dage i mysql
Jeg har sådan en fin bog om SQL og der står ikke så meget om datediff i MySql...
Jeg skal vide hvor mange dag det er siden at det var den dato som står i et DATE felt.
Jeg bruger PHP og kan således lave dagen i dag i det rette format med:
date("Y-m-d");
I min database er der et felt med "oprettelsesdato" i samme format, som DATE datatype. Hvordan får jeg sql til at returnere antal dage imellem nu og "oprettelsesdato"?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Kan du hjælpe mig med at putte det ind i min side?
$result = mysql_query("SELECT * FROM hund WHERE name='$dogname' AND yourname='$yourname'") or die(mysql_error()); if($row = mysql_fetch_assoc($result)) { print "yourname=".$row['yourname']."&name=".$row['name']."&age=".HER SKAL VI HAVE DEN DATEDIFF IND."&kg=".$row['kg']."&date=".$row['date']."&lastvisit=".$row['lastvisit']."&health=".$row['health']."&hungry=".$row['hungry']."&iq=".$row['iq']."&fun=".$row['fun']."&clean=".$row['clean']."&comfort=".$row['comfort']."&"; }
$result = mysql_query("SELECT yourname,name,DATEDIFF(date,CURRDATE()) AS age,kg,date,lastvisit,health,hungry FROM hund WHERE name='$dogname' AND yourname='$yourname'") or die(mysql_error());
Den kan ikke lide det hverken med eller uden '', men det er jo også mig der er et fjols og kalde et felt for date. Jeg fikser det lige og tester igen :)
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 '(oprdate,CURRDATE()) AS age,kg,date,lastvisit,health,hungry, iq
Her er scriptlinien:
$result = mysql_query("SELECT yourname,name,DATEDIFF(oprdate,CURRDATE()) AS age,kg,date,lastvisit,health,hungry, iq,fun,clean,comfort FROM hund WHERE name='$dogname' AND yourname='$yourname'") or die(mysql_error());
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 '(oprdate,CURDATE()) AS age,kg,date,lastvisit,health,hungry, iq,
Det ser ud til at være en vinder (omend kun med et r i CURDATE)... Hunden jeg tester på blev oprettet for et par timer siden og den siger 1 nu, så det er jo rigtigt :)
Hvis i begge smider et svar vil jeg acceptere og lukke spørgsmålet.
Meget sjov idé, men kan der ikke komme nogle sjove lyde på når man laver de forskellige ting ;o)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.