24. maj 2005 - 14:30Der er
9 kommentarer og 1 løsning
Distinct med mysql_num_rows på 2 felter
Hej
Jeg har denne sætning.
$month = date("Y-m"); include_once ("../cfig.php"); $result = mysql_query("SELECT DISTINCT Dato_ind, Ip FROM Data WHERE Dato_ind LIKE '%$month%'") or die (mysql_error());
$rows = mysql_num_rows($result); $antal = $rows;
echo $antal
Hvor jeg gerne vil have antallet af unikke besøgende i denne måndede, og her vil jeg gerne lave en distinct på Ip, og så tage dem hvor datoen LIKE $month, men som jeg har skrevet den her så laver den vel også en distinct på datoen eller hvad?
Men hvis du kun er interesseret i antallet så burde følgende vist kunne gøre det $result = mysql_query("SELECT COUNT (DISTINCT Ip) FROM Data WHERE Dato_ind LIKE '%$month%'") or die (mysql_error()); $antal = mysql_result($result,0);
Skal du kun bruge antallet? Du skal ikke bruge rækkerne? Så brug COUNT(DISTINCT) istedet. Og hvis Dato_ind er et mysql DATETIME eller DATE felt, så brug:
$result = mysql_query("SELECT COUNT(DISTINCT Ip) FROM Data WHERE MONTH(Dato_ind) = MONTH(NOW()) AND DAYOFMONTH(Dato_ind) = DAYOFMONTH(NOW())") or die (mysql_error()); $antal = mysql_result($result, 0); echo $antal;
$result = mysql_query("SELECT COUNT(DISTINCT Ip) FROM Data WHERE MONTH(Dato_ind) = MONTH(NOW()) AND YEAR(Dato_ind) = YEAR(NOW())") or die (mysql_error()); $antal = mysql_result($result, 0); echo $antal;
Får en fejl i mysql syntaxe på den første 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 'DISTINCT Ip FROM Data WHERE Dato_ind LIKE '%2005-05%''
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.